美文网首页
format格式化函数

format格式化函数

作者: SimonJoe246 | 来源:发表于2018-12-07 22:03 被阅读0次

Usage:

自 python2.6 开始,新增了一种格式化字符串的方法,增强了格式化字符串的功能。

基本用法是以 {}: 代替以前的 %

可以接收不限个数的参数,位置可以不按顺序。

>>> s = '{1} {2} {0} {1}'.format('a', 'b', 'c')
>>> s
'b c a b'


>>> '{} {}'.format('hello', 'world')
'hello world'

# 也可设置参数
>>> '{name} {url}'.format(name='simon', url='simonjoe246.github.io')
'simon simonjoe246.github.io'

# 也可通过字典设置参数
>>> s = dict(name='simon', url='simonjoe246.github.io')
>>> '{name} {url}'.format(**s)
'simon simonjoe246.github.io'

# 通过列表索引设置参数
>>> l = ['simon', 'simonjoe246.github.io']
>>> '名字{0[0]} 网址{0[1]}'.format(l)
'名字simon 网址simonjoe246.github.io'

# 当然也可向format传入类对象,前面调用对象属性。

格式化数字

[图片上传失败...(image-1d549a-1544191403090)]

>>> '{:.2f}'.format(3.1415926)
'3.14'
>>> '{:4.2f}'.format(3.1415926)
'3.14'
>>> '{:5.2f}'.format(3.1415926)
' 3.14'

冒号后面大概可以分为四部分内容:

一、

后紧接要填充的字符,

二、

对齐标识符(align sign),一般后接数字表示字符串宽度(放在第三部分讲),如果不接数字无意义,默认为右对齐。

^:居中

<:左对齐

>:右对齐

三、

带符号,字符串宽度,保留几位小数

+:表示正数前加+号,负数前加-

5: 数字表示字符串总宽度,与对齐标识符联用,一般可以省略d

.2f表示保留几位小数(如上所示,小数点也占一位宽度)

四、

进制转换,若 format 内容为整数,可以使用 bdoxX 分别表示二进制、十进制、八进制、小写十六进制、大写十六进制

实例:

>>> '{:2^16}'.format(4)
'2222222422222222'
>>> '{:x^+16.2f}'.format(-4.2545845)
'xxxxx-4.25xxxxxx'
>>> '{:x^+16x}'.format(-456)
'xxxxxx-1c8xxxxxx'

相关文章

网友评论

      本文标题:format格式化函数

      本文链接:https://www.haomeiwen.com/subject/udzxhqtx.html