- %-formatting
- str.format()
- f-Strings
除 % 以外, 事实上字符串格式化操作还能通过 str.format()方法或者 f-Strings 实现. 相比于老版的字符串格式化方法, str.format()方法拥有更多的功能, 操作起来更加方便, 可读性也更强.
str.format()简介与用法
1.str.format()简介:
str.format()是对 %-formatting 的改进, 相对于 %-formatting ,str.format()功能更加强大, 该函数把字符串当成一个模板, 通过传入的参数进行格式化, 并且使用大括号 "{}" 作为特殊字符代替 "%".
str.format()方法优点如下:
不需要关注数据类型, 而在 % 方法中 %s 只能替代字符串类型
单个参数可以多次输出, 参数顺序可以不相同
填充方式十分灵活, 对齐方式十分强大
官方推荐用的方式,% 方式将会在后面的版本被淘汰
2.str.format()的用法:
替换字段用 {} 标记
- print('姓名是:{}, 年龄是:{}'.format('Tom',20))
- print('{} {} {}'.format('i', 'love', 'python'))
>>>姓名是: Tom, 年龄是: 20
>>>i love python
通过带数字编号来指定接收参数的位置, 将调用时传入的参数按照位置进行传入
- print('{1} {2} {3}'.format('i', 'love', 'python'))
- print('{3} {2} {1}'.format('i', 'love', 'python'))
- >>>i love python
- >>>python love i
通过带关键字来匹配参数位置
print('姓名是:{name}, 年龄是:{age}'.format(name="Tom","age=20"))
>>>姓名是: tom, 年龄是: 20
f-Strings 的用法
f-strings 是指以 f 或 F 开头的字符串, 其中以 {} 包含的表达式会进行值替换.
- name="tom"
- age="20"
- print(f"姓名是:{name}, 年龄是:{age}")
>>>姓名是: tom, 年龄是: 20
格式化输出
来源: http://www.bubuko.com/infodetail-3099920.html