Python .format()函数使用方法详解

1. 前言

Python .format()函数是Python中一种格式化输出字符串的方法。通过将变量嵌入到字符串中,可以很方便地组合成一个新的字符串。本文将深入探讨Python .format()函数的使用方法。

2. 基础用法

2.1 简单示例

Python .format()函数可以在字符串中嵌入变量。以一个简单的示例为例:

age = 18

print("Tom is {} years old".format(age))

上述代码中,变量 age 被嵌入到 "Tom is {} years old" 中,用 format() 函数将其渲染成一个完整的字符串。

代码输出结果为:

Tom is 18 years old

可以看到,变量 age 被正确地嵌入到字符串中。

2.2 指定变量顺序

Python .format()函数还可以通过指定变量顺序来使用。以一个简单的示例为例:

name = "Tom"

age = 18

print("{1} is {0} years old".format(age, name))

上述代码中,变量 name 和 age 被按照给定的顺序嵌入到字符串中,用 format() 函数将其渲染成一个完整的字符串。

代码输出结果为:

Tom is 18 years old

可以看到,由于我们指定了变量顺序,因此输出的字符串的变量顺序与代码中变量的顺序是相反的。这在处理多个变量的情况下非常有用。

2.3 格式化字符串为货币样式

有时需要将数字格式化为货币格式。以一个简单的示例为例:

price = 25

print("The price is ${:,.2f}".format(price))

在上图中,我们通过在格式化字符串中使用 ${:,.2f} 来将数字 price 格式化为货币格式。其中,$ 表示美元符号,, 表示千位分隔符,.2f 表示显示两位小数。

代码输出结果为:

The price is $25.00

3. 高级用法

3.1 填充和对齐

使用 .format() 函数还可以对字符串进行填充和对齐。以一个简单的示例为例:

title = "Python"

print("{:*>20}".format(title))

在上图中,我们在 {} 中使用 : 来指定填充和对齐选项。其中,* 表示填充字符,20 表示宽度。此处的填充字符是一个星号 *,宽度为 20。

代码输出结果为:

***********Python

3.2 格式化对象

Python .format()函数不仅可以用于格式化字符串,还可以用于格式化对象。以一个简单的示例为例:

class Person:

def __init__(self, name, age):

self.name = name

self.age = age

person = Person("Tom", 18)

print("Name: {0.name}, Age: {0.age}".format(person))

上述代码中,我们定义了一个类 Person,包含属性 name 和 age。我们创建了一个 Person 对象,然后使用 .format() 函数将其格式化为字符串。

代码输出结果为:

Name: Tom, Age: 18

3.3 使用字典传递参数

除了使用对象之外,还可以在 .format() 函数中使用字典。以一个简单的示例为例:

person = {"name": "Tom", "age": 18}

print("Name: {name}, Age: {age}".format(**person))

在上述代码中,我们创建了一个字典 person,其中包含属性 name 和 age。我们使用 .format() 函数将字典格式化为字符串,并使用 ** unpack operator 来传递参数。

代码输出结果为:

Name: Tom, Age: 18

3.4 使用列表和元组传递参数

和字典一样,Python .format() 函数也可以使用列表和元组作为参数。以一个简单的示例为例:

person = ["Tom", 18]

print("Name: {}, Age: {}".format(*person))

在上述代码中,我们创建了一个列表 person,其中包含属性 name 和 age。我们使用 .format() 函数将其格式化为字符串,并使用 * unpack operator 来传递参数。

代码输出结果为:

Name: Tom, Age: 18

4. 结语

Python .format()函数提供了一种灵活而强大的方式来格式化字符串。无论是简单的字符串,还是复杂的对象或数据结构,都可以方便地通过 .format() 函数进行格式化。本文仅涉及该函数的一部分用法,你也可以在实际应用中探索更多的用法。

后端开发标签