📜  Python string.format()方法(1)

📅  最后修改于: 2023-12-03 14:46:04.733000             🧑  作者: Mango

Python string.format()方法

在Python中,格式化字符串是一种非常常见和常用的操作。字符串格式化可以将某些数据插入到字符串中,并自定义它们的位置,以便更好地呈现给用户。

Python的字符串格式化有很多种方法,其中最常见和灵活的方法是使用.format()方法。

目录
基本用法

.format()方法使用{}作为占位符,称为格式化字段,可以在{}中填写要显示的值。

>>> print("Hello, {}!".format("Python"))
Hello, Python!
>>> print("{} is {} years old.".format("Alice", 25))
Alice is 25 years old.

在上面的示例中,我们使用.format()方法将字符串中的占位符{}替换为所需的文本。

位置参数

格式化字符中也可以使用位置参数,可以定义多个位置参数,这些参数相互顺序影响替换顺序。可以在格式化字符串中设置不同的位置参数索引,以便按指定的顺序进行替换。

>>> print("{1} is {0} years old.".format(25, "Alice"))
Alice is 25 years old.

在上面的示例中,我们使用索引0和1来定义参数的位置,这样我们可以指定打印顺序。

关键字参数

与位置参数不同,关键字参数是通过名称来传递参数的。在格式化字符串中,可以设置关键字参数的名称,在代码中传递值时,应该指定其名称。

>>> print("{name} is {age} years old.".format(name="Alice", age=25))
Alice is 25 years old.

在上面的示例中,我们可以看到我们用变量名替换了传递给方法的参数。这使得代码可读性更好。

混合使用

还可以在格式化字符串中使用位置参数和关键字参数。在这种情况下,位置参数必须出现在关键字参数之前。

>>> print("{0} is {1} years {category}.".format("Alex", 35, category="old"))
Alex is 35 years old.

在上面的示例中,我们使用位置参数和关键字参数混合使用,在一个字符串中显示多个值。

格式化字符串语法

Python中的格式化字符串语法是以{}为基础的。格式化字段用花括号括起来,并使用参数来指定值。如果要在字符串中使用花括号{},可以使用双大括号{{}}来转义。

>>> print("{{{} * {}}} = {}".format(2, 3, 2 * 3))
{2 * 3} = 6

在上面的示例中,我们在字符串中使用了花括号,使用双大括号来避免解释器解释这为格式化字段。

格式化类型

格式化字符串也可以使用格式化类型,例如,要格式化为浮点数,可以在花括号中指定类型,例如,使用.2f表示保留两个小数位。

>>> print("{:.2f}".format(3.1415926))
3.14

在上面的示例中,我们使用.2f格式化类型来指定小数点后保留的位数。

案例演示

让我们看一个完整的示例,其中应用了上述所有的格式化方法。在这个例子中,我们使用一个字典对象作为关键字参数传递。

person = {"name": "Alice", "age": 25}
print("{name} is {age} years old.".format(**person))

输出:

Alice is 25 years old.

在上面的示例中,我们像往常一样使用关键字参数,但是关键字参数是在一个字典对象中传递的,因此我们在传递参数之前使用了**运算符。