Python字符串格式化
在Python中,字符串格式化是一种将变量插入字符串中的方法,使得输出的字符串更加具有可读性和美观性。Python提供了多种字符串格式化的方法,包括使用 % 操作符、str.format() 方法和 f-string(格式化字符串字面值)。下面逐个介绍这些方法的用法和示例。
1. 使用 % 操作符进行字符串格式化
% 操作符可以将变量插入字符串中,并指定格式化的方式。
基本语法:
%后面跟着格式化字符串,其中%后的括号中包含要插入的变量。- 格式化字符串中使用
%后面的占位符来表示变量的位置和格式化方式。
示例:
name = "Alice"
age = 25
formatted_string = "My name is %s and I am %d years old." % (name, age)
print(formatted_string)
输出结果:
在上面的示例中,%s 表示字符串格式,%d 表示整数格式。具体的占位符及其格式化规则如下:
%s:字符串%d:带符号的十进制整数%f:浮点数%x、%X:十六进制表示的整数
2. 使用 str.format() 方法进行字符串格式化
str.format() 方法允许更灵活和强大的字符串格式化,支持指定变量的位置和格式。
基本语法:
- 大括号
{}用于表示要插入变量的位置。 - 可以使用
{}中的数字或命名字段来指定变量的位置或名称。 - 可以在
{}中使用:指定格式化选项。
示例:
name = "Bob"
age = 30
formatted_string = "My name is {} and I am {} years old.".format(name, age)
print(formatted_string)
输出结果:
指定位置和格式化选项:
pi = 3.141592653589793
formatted_string = "The value of pi is {:.2f}".format(pi)
print(formatted_string)
输出结果:
在上面的示例中,:.2f 表示格式化为保留两位小数的浮点数。
3. 使用 f-string 进行字符串格式化(Python 3.6+)
f-string 是从 Python 3.6 开始引入的一种更简洁、更直观的字符串格式化方式,允许在字符串中直接插入变量。
基本语法:
- 在字符串前加上
f或F,然后在字符串中用{}插入变量。 - 可以在
{}中使用表达式和函数调用。
示例:
name = "Charlie"
age = 35
formatted_string = f"My name is {name} and I am {age} years old."
print(formatted_string)
输出结果:
支持表达式和函数调用:
输出结果:
总结
以上是Python中常用的字符串格式化方法:使用 % 操作符、str.format() 方法和 f-string。f-string 是最推荐的方法,因为它更简洁、更直观,并且在性能上有所优化。根据个人习惯和项目需求,选择合适的字符串格式化方式来使代码更具可读性和易维护性。