python格式化字符串
模板
格式化字符串时,Python使用一个字符串作为模板。模板中有格式符,这些格式符为真实值预留位置,并说明真实数值应该呈现的格式。Python用一个tuple将多个值传递给模板,每个值对应一个格式符。
在模板和tuple之间,有一个%号分隔,它代表了格式化操作。举个例子:
print(“I’m %s. I’m %d year old” % (‘Vamei’, 99) )
我们还可以用词典来传递真实值。如下:
print(“I’m %(name)s. I’m %(age)d year old” % {‘name’:‘Vamei’, ‘age’:99})
格式符
%s 字符串 (采用str()的显示)
%r 字符串 (采用repr()的显示)
%c 单个字符
%b 二进制整数
%d 十进制整数
%i 十进制整数
%o 八进制整数
%x 十六进制整数
%e 指数 (基底写为e)
%E 指数 (基底写为E)
%f 浮点数
%F 浮点数,与上相同
%g 指数(e)或浮点数 (根据显示长度)
%G 指数(E)或浮点数 (根据显示长度)
format(好用点)
举几个例子,自己体会 。 详细地址
print("{} {}".format("hello", "world")) # 不设置指定位置,按默认顺序
'hello world'
print("{0} {1}".format("hello", "world")) # 设置指定位置
'hello world'
print( "{1} {0} {1}".format("hello", "world")) # 设置指定位置
'world hello world'
print("网站名:{name}, 地址 {url}".format(name="菜鸟教程", url="www.runoob.com"))
网站名:菜鸟教程, 地址 www.runoob.com
# 通过字典设置参数
site = {"name": "菜鸟教程", "url": "www.runoob.com"}
print("网站名:{name}, 地址 {url}".format(**site))
网站名:菜鸟教程, 地址 www.runoob.com
# 通过列表索引设置参数
my_list = ['菜鸟教程', 'www.runoob.com']
print("网站名:{0[0]}, 地址 {0[1]}".format(my_list)) # "0" 是必须的
网站名:菜鸟教程, 地址 www.runoob.com
print("{:.2f}".format(3.1415926)) #保留两位小数
3.14