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() 函数进行格式化。本文仅涉及该函数的一部分用法,你也可以在实际应用中探索更多的用法。