Python 基础教程

Python 高级教程

Python 相关应用

Python 笔记

python 内置类 str 的字符串格式化函数 format

python 内置(内建)数据类型 str 详解 python 内置(内建)数据类型 str 详解


python 在内置模块(builtins)中内建了字符串类 str,从版本 2.6 开始新增了字符串格式化函数 format,它通过 {}: 来代替以前的 %

format 函数

def format(self, *args, **kwargs):

该函数执行字符串格式化操作。

调用此函数的字符串可以包含字符串字面值或者以花括号 {} 括起来的替换域。

每个替换域可以包含一个位置参数的数字索引,或者一个关键字参数的名称

>>> 'The sum of 18 + 8 is {0}'.format(18+8)
'The sum of 18 + 8 is 26'

位置参数的数字索引从 0 开始。

示例

默认顺序占位符

>>> '{} {}'.format('knowledge','dict')
'knowledge dict'

不设置指定位置,按照默认顺序进行替换。

按位置占位符

>>> '{0} {1}'.format('knowledge','dict')
'knowledge dict'

设置指定位置,索引位置从 0 开始。

>>> '{0} {1} {0}'.format('knowledge','dict')
'knowledge dict knowledge'

关键字占位符

>>> '{name} - {url}'.format(name='yk', url='www.knowledgedict.com')
'yk - www.knowledgedict.com'

字典参数占位符

>>> site={'name':'yk','url':'www.knowledgedict.com'}
>>> '{name} - {url}'.format(**site)
'yk - www.knowledgedict.com'

通过字典设置参数,字典对应的字段名与占位符名称。

列表索引占位符

>>> lst=['yk','www.knowledgedict.com']
>>> '{0[0]} - {0[1]}'.format(lst)
'yk - www.knowledgedict.com'

通过列表索引替换占位符。