python format格式化函数

Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。

基本语法是通过 {} 和 : 来代替以前的 % 。 

format 函数可以接受不限个参数,位置可以不按顺序。

字符串格式化使用.format()方法,用户如下:

<模板字符串>.format.(,逗号分隔的参数)

通过位置和关键字

>>> '{} {} {}'.format('python', 'Hello', 'World')
'python Hello World'
>>> '{1} {1} {2}'.format('python', 'Hello', 'World')
'Hello Hello World'
>>> 'my name is {name}, {age} years old'.format(name='Tom', age=18)
'my name is Tom, 18 years old'

槽内部对格式化的配置方式{<参数序号>:<格式控制标记>}

:             引导符号

<填充>     用于填充的单个字符

<对齐>     <左对齐  >右对齐  ^居中对齐

<宽度>     槽设定的输出宽度

< , >          数字的千位分隔符

<. 精度>    浮点数小数,精度或字符串,最大输出长度

<类型>      主要就是进制了,b、d、o、x分别是二进制、十进制、八进制、十六进制

其中填充、对齐、宽度经常为一组使用,^、<、>分别是居中、左对齐、右对齐,后面带宽度

:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充

>>> print('{:=<20}'.format('python'))
python==============
>>> print('{:=>20}'.format('python'))
==============python
>>> print('{:=^20}'.format('python'))
=======python=======
>>> print('{:^20}'.format('python'))
       python   

逗号、精度和类型为一组使用

>>> '{:,.2f}'.format(123456.789)
'123,456.79'

其中.2表示长度为2的精度,f表示float类型。逗号(,)使用较少,一般在特定的程序使用

主要就是进制了,b、d、o、x分别是二进制、十进制、八进制、十六进制,%为格式化为百分比形式

>>> '{:b}'.format(123)
'1111011'
>>> '{:d}'.format(123)
'123'
>>> '{:o}'.format(123)
'173'
>>> '{:x}'.format(123)
'7b'
>>> '{:X}'.format(123)
'7B'
>>> '{:%}'.format(123)
'12300.000000%'

猜你喜欢

转载自blog.csdn.net/showgea/article/details/81939345