设为首页 收藏本站
查看: 3171|回复: 0

[经验分享] 零基础学python-7.7 字符串格式化方法(2)

[复制链接]
发表于 2017-5-8 10:10:54 | 显示全部楼层 |阅读模式
  紧接着上一章节,这一章节我们聊聊怎样添加具体格式化
  就是指定替换字段的大小、对齐方式和特定的类型编码,结构如下:
  {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:<10}={1:3}'.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'


就说到这里,谢谢大家


------------------------------------------------------------------


点击跳转零基础学python-目录



  

  


版权声明:本文为博主原创文章,未经博主允许不得转载。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-374535-1-1.html 上篇帖子: Python基础教程之第5章 条件, 循环和其他语句 下篇帖子: 零基础学python-7.7 字符串格式化方法(1)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表