在python中经常会用到各种格式化输出来拼接变量、字符串等内容,常用的方式主要有以下几种
1. 使用%来格式化
先来举个栗子,假如我想打印如下内容:
小王去超市买东西,付了10元,找回4.8元
其中“小王”、“10”、“4.8”分别作为变量输入,以%的方式来实现:
上图中的例子里共用到了三种常用类型,%s:字符串、%d:整数、%f:浮点数(其中%.2f表示保留两位小数),需要注意的是不同类型的内容要匹配不同的%格式,如果不匹配的话则会报错,比如cash这个变量,以input()方法输入的内容返回的是一个字符串,所以需要使用%s而不是%d
更多%形式的使用方法,例如使用占位符、以字典格式传入等等,可以自行百度
2. 使用str.format()
直接上例子:
可以看到format()的使用方法就是把需要替换的内容以{ }代替,在format函数的参数内按照顺序写入各个变量。第二行里{ }中直接输入了变量名称,参数里重新定义了变量值,以这种方式输入时变量的位置就不必按照顺序来写入了,Python会自动找相同的变量名。需要注意的是这二行的change虽然也使用了 (int(cash)-price),但它调用的变量仍是最开始定义的值,而不是重新输入的金额计算的结果。
3. 使用f ' '的方法来格式化输出
这种方法是Python3.6添加的新内容(好像是这个版本,如果有误欢迎指出),同时也是我个人比较喜欢用的一种方式。具体使用方式如下:
使用方式相比较前两种简单了不少,只需要在字符串前加 f或F,替换的内容使用{变量}表示即可,而且可以直接进行一些简单的运算
更多的使用方法可以看这里:格式化字符串高级用法
-----END-----