Python之format

2018-07-24  本文已影响14人  __RY__

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

基本语法是通过{}:来代替以前的%
format函数可以接受多个参数,参数的位置可以不按顺序。

>>> '{} {}'.format('hello','world')  # 不设置指定位置,则按默认顺序
'hello world'

>>> '{0} {1}'.format('Hello','world') # 设置指定位置
'Hello world'

>>> '{1} {0} {1}'.format('Hello','world') # 设置指定位置
'world Hello world'
>>> print('网站名:{name} \t地址:{url}'.format(name='百度',url='www.baidu.com'))
网站名:百度  地址:www.baidu.com

# 通过字典设置参数
>>> site = {'name':'百度','url':'www.baidu.com'}
>>> print('网站名:{name} \t 地址:{url}'.format(**site))
网站名:百度   地址:www.baidu.com

# 通过列表设置参数
>>> nList = ['百度','www.baidu.com']
>>> print('网站名:{0[0]} \t 地址:{0[1]}'.format(nList))
网站名:百度   地址:www.baidu.com

数字格式化

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

选项 含义
'<' 强制该字段在可用空间内左对齐(这是大多数对象的默认值)。
'>' 强制字段在可用空间内右对齐(这是数字的默认值)。
'=' 强制将填充放置在符号(如果有)之后但在数字之前。这用于以“+000000120”形式打印字段。此对齐选项仅对数字类型有效。当‘0’紧接在字段宽度之前时,它变为默认值。
'^' 强制字段在可用空间中居中。
'+' 表示正号和负号都应使用符号。
'-' 表示符号应仅用于负数(这是默认行为)。

b、d、o、x 分别是二进制、十进制、八进制、十六进制。

此外我们可以使用大括号 {} 来转义大括号,如下实例:

>>> print ("{} 对应的位置是 {{0}}".format("runoob"))
runoob 对应的位置是 {0}
上一篇下一篇

猜你喜欢

热点阅读