跳到主要内容

Python字符串格式化:%和.format?

参考答案:

Python提供了两种主要的字符串格式化方法:%运算符和.format()方法。

  1. % 运算符:

%运算符是一种古老的格式化字符串的方法,它的语法如下:

"格式化字符串" % (变量1, 变量2, ..., 变量n)

其中,"格式化字符串"中的%后面跟着一个字母(或字母组合),表示要插入的变量的类型。例如:

name = "Alice"
age = 25
print("My name is %s and I am %d years old." % (name, age))

输出:

My name is Alice and I am 25 years old.

在上面的例子中,%s表示要插入一个字符串,%d表示要插入一个整数。

  1. .format() 方法:

.format()方法是Python 3.1及以后版本中引入的一种新的字符串格式化方法,它提供了更灵活、更强大的功能。使用.format()方法时,需要在字符串中用{}表示要插入的变量的位置,然后在字符串后面调用.format()方法,并将要插入的变量作为参数传递给该方法。例如:

name = "Alice"
age = 25
print("My name is {} and I am {} years old.".format(name, age))

输出:

My name is Alice and I am 25 years old.

在上面的例子中,{}表示要插入一个变量。.format()方法会自动按顺序将参数填充到{}中。

此外,.format()方法还支持更高级的格式化选项,如指定变量的宽度、精度、对齐方式等。例如:

pi = 3.1415926
print("Pi is approximately {:.2f}.".format(pi))

输出:

Pi is approximately 3.14.

在上面的例子中,{:.2f}表示要插入一个浮点数,并保留两位小数。

总结来说,%运算符和.format()方法都是Python中用于格式化字符串的工具,但.format()方法提供了更强大、更灵活的功能。在Python 3.x版本中,推荐使用.format()方法进行字符串格式化。