购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.11 格式化字符串的3种方法

在Python 3.6之前,主要有两种将Python表达式嵌入字符串文本中进行格式化的方法:%-formatting和str.format()。在Python 3.6及其后续版本中,可使用f字符串进行字符串格式化。下面一一进行介绍。

2.11.1 %-formatting

下列代码演示传统的%-formatting的用法,源代码见code\2\formatting.py。

name="雯雯"
age=8
print("你的姓名:%s"%name)
print("你的姓名:%s,你的年龄:%s"%(name,age))

代码的执行结果如下。

你的姓名:雯雯
你的姓名:雯雯,你的年龄:8

当使用多个参数或字符串更长时,代码将变得不太容易阅读。

2.11.2 str.format()

str.format()方法是对%-formatting方法的改进。使用str.format()方法替换字段时,用大括号标记。通过下列代码演示str.format()的用法,源代码见code\2\str_format.py。

1  name="雯雯"
2  age=8
3  print("你的姓名:{} ".format(name))
4  print("你的姓名:{},你的年龄:{}".format(name,age))

代码的执行结果与第一种方式的一致,这里不再赘述。

使用str.format()方法的代码比使用%-formatting方法的代码更易读,但处理多个参数或更长的字符串时,代码仍然可能非常冗长。

2.11.3 f字符串

f字符串也称为“格式化字符串文字”,意思是开头有一个f的字符串文字,包含表达式的大括号将被其值替换。

下列代码演示f字符串的用法,源代码见code\2\f-strings.py。

1  name="雯雯"
2  age=8
3  print(f"你的姓名:{name}")
4  print(f"你的姓名:{name},你的年龄:{age}")

代码的执行结果与上述两种方式的一致。其中,第3、4行代码执行后,大括号内的表达式将被具体的值替换。f字符串用起来更加简单,推荐使用。 5T9o8Z/lrBSSpA//A63P7STk3dLZACXRJNqbEF30lzTX9m7jfTDQQmjsq+X/2AGO

点击中间区域
呼出菜单
上一章
目录
下一章
×