python字符串格式化综合例子

发布时间:2019-07-27编辑:脚本学堂
有关python 字符串格式化的方法,python格式化字符串的一些例子,包括占位符执行索引或属性查找,字符填充与对齐方式等,需要的朋友参考下。

python 字符串格式化高级实例代码

格式:s.format(*args, *kwargs)
s 中占位符:
 

{n}:将被format()方法中的位置n上的参数代替,从0开始
>>> print "{0} is {1} writing {3}".format('Kee','now','Java','Python')
Kee is now writing Python
{name}:将被format()方法中关键字参数name代替
>>> print '{c} {b} {a}'.format(a = 'efhdn', b = 123, c = 8.3 )
8.3 123 efhdn
{或}:要输出一个{或},必须使用{{或}}格式
>>> print '{{中国}} 你好!'.format()
{中国} 你好!
 

 
2、占位符还可执行,索引或属性查找
 

#索引查找
>>> stock = {'name':'盐湖钾肥','share':999,'price':123.45}
>>> print "{0[name]} {0[share]} {0[price]}".format(stock)
盐湖钾肥 999 123.45
#属性查找
>>> x = 1 - 2j
>>> print '{0.real} {0.imag}'.format(x)
1.0 -2.0
 

3、可通过{place:format_spec}格式,给每个占位符添加可选的格式说明符。
说明符格式format_spec:[[fill][align]][sign][0][width][.precision][type]
fill:填充符
align:对齐方式 < 、 > 、^
sign:+ - 空格
width:最小字段宽度
 

>>> x = 1 - 2j
>>> print '{0.real:.3f} {0.imag}'.format(x)
1.000 -2.0
 

4、若只要格式话对象的str()或repr(),只需在格式说明符前添加 !s 或 !r
 

>>> name = "Kee"
>>> print "{0!r:*^20}".format(name)
*******'Kee'********
>>> print "{0:*^20}".format(name)
********Kee*********