str.format()
用 {}
代替字符串:
In [5]: 'Language:{}, {}'.format('Java', 'Python')
Out[5]: 'Language:Java, Python'
索引:
#使用数字
In [6]: 'Language:{0}, {1}'.format('Java', 'Python')
Out[6]: 'Language:Java, Python'
#使用名称
In [9]: 'Language:{java}, {py}'.format(java='Java', py='Python')
Out[9]: 'Language:Java, Python'
使用字典:
In [12]: lang = {'java': 'Java', 'py': 'Python'}
In [13]: 'Language:{java}, {py}'.format(**lang)
Out[13]: 'Language:Java, Python'
格式化: 索引:最小宽度.小数点后位数[类型]
In [19]: 'PI: {:.2f}'.format(3.1415)
Out[19]: 'PI: 3.14'
类型:
-
s
默认,表示字符串 -
d
整数 -
f
浮点数
str 的其他方法
-
str.ljust(最小宽度)
字符串左对齐 str.rjust()
str.center()
-
str.zfill()
前导零
In [20]: for x in range(1, 9):
...: for y in range(1, 9):
...: print(str(x*y).rjust(2), end=' ')
...: print()
...:
1 2 3 4 5 6 7 8
2 4 6 8 10 12 14 16
3 6 9 12 15 18 21 24
4 8 12 16 20 24 28 32
5 10 15 20 25 30 35 40
6 12 18 24 30 36 42 48
7 14 21 28 35 42 49 56
8 16 24 32 40 48 56 64
In [22]: '1'.zfill(3)
Out[22]: '001'
str()
和 repr()
的区别
-
str()
表示便于人类阅读的字符串 -
repr()
表示便于python解释器阅读的字符串