Python 3.8从零开始学
上QQ阅读APP看书,第一时间看更新

4.2.4 f字符串格式化

从Python 3.6开始,引入了一种新的字符串格式化字符:_f-strings_,格式化字符串。

使用f字符串做格式化可以节省很多的时间,使格式化更容易。f字符串格式化也称为“格式化字符串文字”,因为f字符串格式化是开头有一个f的字符串文字,即使用f格式化字符串时,需在字符串前加一个f前缀。

f字符串格式化包含了由花括号括起来的替换字段,替换字段是表达式,它们会在运行时计算,然后使用format()协议进行格式化。

_f-strings_使用方式如下:

>>> f'hello,{world}'
'hello,world'
>>> f'{2*10}'
'20'
>>> year=2022
>>> address='北京'
>>> gold=5
>>> f'{year}年的冬奥会将在{address}举行,预测中国至少赢取{gold}枚金牌'
'2022年的冬奥会将在北京举行,预测中国至少赢取5枚金牌'
>>> print(f'{year}年的冬奥会将在{address}举行,预测中国至少赢取{gold}枚金牌')
2022年的冬奥会将在北京举行,预测中国至少赢取5枚金牌

由输出结果可以看到,使用f做字符串格式化也是非常方便的。

在Python中,使用百分号(%)、str.format()形式可以格式化的字符串,都可以使用f字符串格式化实现。

提示


在后续章节中,会更多地使用str.format()和f的形式做格式化,百分号(%)格式化的方式能不用就不用。