format()使用学习
来源:互联网 发布:灵枢针灸免费网络课 编辑:程序博客网 时间:2024/06/01 10:40
Python2.6
以后,新增了一种字符串格式化输出函数 str.format()
,非常简单方便。
语法:
通过 {}
和 :
来替代 %
使用简介:
- 1、 通过位置:
这里的位置是指format()
中参数的位置,0 表示第一个位置的参数,1 表示第二个位置的参数,以此类推。
In [1]: '{0},{1}'.format('kzc',18) Out[1]: 'kzc,18'In [2]: '{},{}'.format('kzc',18) Out[2]: 'kzc,18'In [3]: '{1},{0},{1}'.format('kzc',18) Out[3]: '18,kzc,18'
字符串的format函数可以接受不限个参数,位置可以不按顺序,可以不用或者用多次,不过2.6不能为空{},2.7才可以。
- 2、通过关键字参数
通过format()
中的参数名,或者字典中的键值来指定,这种方式比通过位置来指定要好,因为只有0,1,2这些数字可能会让人搞混。
In [5]: '{name},{age}'.format(age=18,name='kzc') Out[5]: 'kzc,18'In [5] : "{0[name]} is {0[age]} years old.".format({"name":"lili","age":12})Out[5] : lili is 12 years old.
- 3、通过对象属性
class Person: def __init__(self,name,age): self.name,self.age = name,age def __str__(self): return 'This guy is {self.name},is {self.age} old'.format(self=self) In [2]: str(Person('kzc',18)) Out[2]: 'This guy is kzc,is 18 old'
- 4、通过下标
这个是在list
中用到的。
In [7]: p=['kzc',18]In [8]: '{0[0]},{0[1]}'.format(p)Out[8]: 'kzc,18'
- 5、格式限定符
format()函数还有非常丰富的格式限定符,其语法是:在{}
中带:
。
比如:填充与对齐,填充与对齐经常一起使用。^、<、>
分别表示居中、左对齐、右对齐,该符号后面可以带上宽度。:
号后面是填充的字符,注意只能是一个字符,不指定的话,默认是用空格填充。
In [15]: '{:>8}'.format('189')Out[15]: ' 189'In [16]: '{:0>8}'.format('189')Out[16]: '00000189'In [17]: '{:a>8}'.format('189')Out[17]: 'aaaaa189'
- 6、精度与类型f
精度常跟类型 f
一起使用
In [44]: '{:.2f}'.format(321.33345)Out[44]: '321.33'
其中.2表示长度为2的精度,f表示float类型。
还有其他类型,主要就是进制了,b、d、o、x分别是二进制、十进制、八进制、十六进制。
In [54]: '{:b}'.format(17)Out[54]: '10001'In [55]: '{:d}'.format(17)Out[55]: '17'In [56]: '{:o}'.format(17)Out[56]: '21'In [57]: '{:x}'.format(17)Out[57]: '11'
- 7、用
,
号还能用来做金额的千位分隔符。
In [47]: '{:,}'.format(1234567890)Out[47]: '1,234,567,890'
- 8、运行时动态指定浮点数精度:
>>> for i in range(5): ... print('%.*f' % (i, 1.234234234234234)) ... '1' '1.2' '1.23' '1.234' '1.2342'
还可以这样实现:
>>> for i in range(5): ... print('{0:.{1}f}'.format(1 / 3.0, i) )... '0' '0.3' '0.33' '0.333' '0.3333'
(说明:本文大部分内容是下面博客的,其中加入了我自己的理解,以及还有其他相关的知识。)
参考:
http://www.cnblogs.com/dplearning/p/5702008.html
0 0
- format()使用学习
- format使用
- Format使用
- 学习boost之format
- string.Format学习
- python format 学习
- Format学习总结
- python学习:format方法
- String.format(format, args)的使用
- format函数的使用
- format函数的使用
- String.Format使用
- string.format的使用
- delphi Format 使用
- format的使用
- String.Format使用
- String.format 的使用
- String.format使用
- 很详细的解答tree of tree 树状DP(有图)
- java中的命名--类型转换--运算符--流程控制语句等
- 类的加载和初始化总结
- 轻松理解js的函数和构造函数的区别
- ActiveMQ_JMX监测ActiveMQ中队列的状态
- format()使用学习
- Java_Timer
- 2017蓝桥杯模拟题 风险度量(暴力枚举)
- JQuery中"Uncaught ReferenceError: $ is not defined"解决方法
- Java_读取properties文件
- 面试答案
- Linux_>/dev/null
- Java_判断操作系统类型
- 2. RabbitMQ的几种典型使用场景