在python中字符串的format()方法是用来格式化字符串的,它除了基本参数调用外还可以和其他关键字组合使用,本文就介绍七个常用的用法。
1.str.format()方法的基本用法,示例如下:
print('We are the {} who say "{}!"'.format('knights', 'Ni'))
2.花括号及之内的字符(称为格式字段)被替换为传递给str.format()方法的对象。花括号中的数字表示传递给str.format()方法的对象所在的位置,示例如下:
>>> print('{0} and {1}'.format('spam', 'eggs')) spam and eggs
3.str.format()方法中使用关键字参数名引用值,示例如下:
>>> print('This {food} is {adjective}.'.format( ... food='spam', adjective='absolutely horrible')) This spam is absolutely horrible.
4.位置参数和关键字参数可以任意组合,示例如下:
>>> print('The story of {0}, {1}, and {other}.'.format('Bill', 'Manfred',other='Georg')) The story of Bill, Manfred, and Georg.
5.如果不想分拆较长的格式字符串,最好按名称引用变量进行格式化,不要按位置。这项操作可以通过传递字典,并用方括号'[]'访问键来完成,示例如下:
>>> table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678} >>> print('Jack: {0[Jack]:d}; Sjoerd: {0[Sjoerd]:d}; ' ... 'Dcab: {0[Dcab]:d}'.format(table)) Jack: 4098; Sjoerd: 4127; Dcab: 8637678
6.也可以用'**'符号,把table当作传递的关键字参数,示例如下:
>>> table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678} >>> print('Jack: {Jack:d}; Sjoerd: {Sjoerd:d}; Dcab: {Dcab:d}'.format(**table)) Jack: 4098; Sjoerd: 4127; Dcab: 8637678
7.与内置函数vars()结合使用时,这种方式非常实用,可以返回包含所有局部变量的字典,示例如下:
>>> for x in range(1, 11): ... print('{0:2d} {1:3d} {2:4d}'.format(x, x*x, x*x*x))
以上七个例子就是format()方法常见得组合用法了,希望对你有所帮助。