python2格式化字符串,7. python 字符串格式化方法(2)

7. python 字符串格式化方法(2)

紧接着上一章节,这一章节我们聊聊怎样添加具体格式化

就是指定替换字段的大小、对齐方式和特定的类型编码,结构如下:

{fieldname!conversionflag:formatspec}

fieldname 指定参数的一个数字或者关键字,后面可选 .name 或者 [index] 引用

conversionflag 可以是 r/s/a 或者是在该值上对 repr/str/ascii 内置函数的一次调用

formatspec 指定如何表示该值,如字段宽带、对齐方式、补零、小数点精度等,并以一个可选的数据类型编码结束>>>'{0:10}={1:10}'.format ('abcde',1.234566789)

'abcde     =1.234566789'   >>>'{0:10}={1:3}'.format ('abcde',1.234566789)

'abcde     =1.234566789'

>>>'{0:10}={1:3}'.format ('abcde',123456678.9)

'abcde     =123456678.9'

>>>'{0:.format ('abcde',123456678.9)

'abcde     =123456678.9'   >>> '{0:>10}={1:3}'.format ('abcde',123456678.9)

'     abcde=123456678.9'

>>> import sys

>>> '{0.platform:>10}={1:3}'.format (sys,123456678.9)

'     win32=123456678.9'

上面举了一些例子

{0:10} 表示一个 10 字节宽的字段的参数

{0:<10} 表示一个左对齐的 10 字节宽的字段的参数

{0:>10} 表示一个右对齐的 10 字节宽的字段的参数

{0.platform} 读取 sys 模块的属性

下面再举一些例子>>>'{0:e},{1:.3e},{2:g}'.format (3.141592,3.141592,3.141592)

'3.141592e+00,3.142e+00,3.14159'

>>>'{0:f},{1:.2f},{2:06.2f}'.format (3.141592,3.141592,3.141592)

'3.141592,3.14,003.14'

>>>

{0:e} 代表使用科学计数法来表示

{1:.3e} 只保留三位小数的科学计数法来表示

{2:g} 使用 g 来表示浮点数

{1:.2f} 保留两位小数的浮点数

{2:06.2f} 六字节款的保留两位小数不足宽度补零的字符串

除了上面的十进制,还支持八进制、十六进制>>>'{0:X},{1:o},{2:b}'.format (255,255,255)

'FF,377,11111111'

>>>bin(255),int('11111111',2),0b11111111

('0b11111111', 255, 255)

还支持在 format 里面嵌入表达式,动态获取>>>'{0:f},{1:.2f},{2:06.2f}'.format (1/3,1/3,1/3)

'0.333333,0.33,000.33'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值