Python中的格式化输出功能
Python 提供了多种格式化输出字符串的方式,使得可以以更可读和结构化的方式输出数据。以下是几种常用的格式化方法:
百分号 (%) 格式化:
这是Python中最传统的格式化方式,类似于C语言中的printf。name = "Alice"
age = 30
print("My name is %s and I am %d years old." % (name, age))
%s
用于字符串,%d
用于整数,此外还有%f
用于浮点数等。str.format() 方法:
这是Python 2.7和3.0引入的更强大的格式化方法。name = "Bob"
age = 25
print("My name is {} and I am {} years old.".format(name, age))
也可以使用位置参数和关键字参数:
print("My name is {name} and I am {age} years old.".format(name="Charlie", age=35))
f字符串 (格式化字符串字面量):
这是Python 3.6引入的一种简洁高效的格式化方法。name = "Diana"
age = 28
print(f"My name is {name} and I am {age} years old.")
在f字符串中,可以直接在花括号中进行表达式或调用函数:
print(f"I will be {age + 1} years old next year.")
模板字符串 (Template Strings):
这是通过string
模块提供的一种更安全、受限的格式化方式,通常用于需要安全替换的场景。from string import Template
t = Template("My name is $name and I am $age years old.")
print(t.substitute(name="Eve", age=40))
选择具体的格式化方式通常取决于用户需求、Python版本以及代码可读性。f字符串由于其简洁和强大,通常在现代Python代码中被广泛使用。