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'

7. python 字符串格式化方法(2)的更多相关文章

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

    7. python 字符串格式化方法(1) 承接上一章节,我们这一节来说说字符串格式化的另一种方法,就是调用format() >>> template='{0},{1} and {2 ...

  2. python字符串格式化方法 format函数的使用

      python从2.6开始支持format,新的更加容易读懂的字符串格式化方法, 从原来的% 模式变成新的可读性更强的 花括号声明{}.用于渲染前的参数引用声明, 花括号里可以用数字代表引用参数的序 ...

  3. python字符串格式化方法%s和format函数

    1.%s方法 一个例子 print("my name is %s and i am %d years old" %("xiaoming",18) 输出结果:my ...

  4. 第3.8节 Python百分号占位符的字符串格式化方法

    一.    概念         格式化字符串就是将一些变量转换为字符串并按一定格式输出字符串,包括指定字符的位置.对齐方式.空位补充方式等.Python提供了多种字符串格式设置方法.本节先介绍一种简 ...

  5. 快速理解Python中使用百分号占位符的字符串格式化方法中%s和%r的输出内容的区别

    <Python中使用百分号占位符的字符串格式化方法中%s和%r的输出内容有何不同?>老猿介绍了二者的区别,为了快速理解,老猿在此使用另外一种方式补充说明一下: 1.使用%r是调用objec ...

  6. Python中使用百分号占位符的字符串格式化方法中%s和%r的输出内容有何不同?

    Python中使用百分号占位符的字符串格式化方法中%s和%r表示需要显示的数据对应变量x会以str(x)还是repr(x)输出内容展示. 关于str和repr的关系请见: <Python中rep ...

  7. python的三种字符串格式化方法

    1.最方便的 print 'hello %s and %s' % ('df', 'another df') 但是,有时候,我们有很多的参数要进行格式化,这个时候,一个一个一一对应就有点麻烦了,于是就有 ...

  8. Python 字符串格式化

    Python 字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存 一 ...

  9. 6. python 字符串格式化表达式

    6. python 字符串格式化表达式 字符串格式化允许在一个单个的步骤中对一个字符串执行多个特定类型的替换 特别是给用户提示的时候,格式化非常方便 实现方法: 1.格式化表达式,类似于c语言的pri ...

随机推荐

  1. 最简单删除SQL Server中所有数据的方法(不用考虑表之间的约束条件,即主表与子表的关系)

    其实删除数据库中数据的方法并不复杂,为什么我还要多此一举呢,一是我这里介绍的是删除数据库的所有数据,因为数据之间可能形成相互约束关系,删除操作可能陷入死循环,二是这里使用了微软未正式公开的sp_MSF ...

  2. markdown转换为html

    想要自己实现markdown编辑器,欲使用markdown-it作为编辑器,有着比较多的插件,可以实现代码高亮以及对数学公式转换等功能. // Activate/deactivate rules, w ...

  3. 基于centos6构建私有gitbook平台

    前言: 开源gitbook工具可以让你方便有效的管理自己的文章笔记.发布产品文档等.这里为了学习,基于centos系统构建一个私有的gitbook项目.与公有云gitbook平台相比,这里是简单的展示 ...

  4. Rookey.Frame v1.0 视频教程之三发布-框架核心思想介绍

    本期发布视频: (三)Rookey.Frame v1.0框架核心思想 介绍了Rookey.Frame v1.0框架搭建的核心思想,将框架核心思想理解清楚,对框架运行就会得心应手 官方视频教程: htt ...

  5. WangSql 3.0源码共享(WangSql 1.0重大升级到3.0)

    WangSql 1.0博文阅读: http://www.cnblogs.com/deeround/p/6204610.html 基于1.0做了以下重大改动: 1.多数据实现方式调整 2.使用EmitM ...

  6. 9-4 Unidirectional TSP uva116 (DP)

    题意:给一个n行m列矩阵    从第一列任意一个位置出发 每次往右 右上 右下三个方向走一格 直到最后一列   输出所类和的最小值和路径!! 最小值相同则输出字典序最小路径 很像一开始介绍的三角形dp ...

  7. 数据挖掘算法:关联分析二(Apriori)

    二.Apriori算法 上文说到,大多数关联规则挖掘算法通常采用的策略是分解为两步: 频繁项集产生,其目标是发现满足具有最小支持度阈值的所有项集,称为频繁项集(frequent itemset). 规 ...

  8. maven设计思想

    20171108 maven设计思想? archetype  插件  学习插件.

  9. UWP入门——应用数据和设置

    数据有两个基本的分类,应用数据和用户数据,而用户数据则为由用户拥有的数据,如文档,音乐或电子邮件等,下面将大致的介绍一下应用数据的基本操作. 应用数据:应用数据包含APP的状态信息(如运行时状态,用户 ...

  10. Adobe Photoshop CC 2017-18.0安装教程

    Adobe Photoshop CC 2017-18.0安装教程 注:下载链接在文章后面 第一步:首先请将电脑的网络断开,很简单:禁用本地连接或者拔掉网线,这样就可以免除登录Creative Clou ...