format() 方法的格式控制
:
.
引导符号
用于填充的单个字符
右对齐 ^居中对齐
横的设定输出宽度
数字的千位分隔符,适用于整数和浮点数
浮点数小数部分的精度或字符串的最大输出长度
整数类型b,c,d,o,x,X,浮点数类型e,E,f,%
b:输出整数的二进制方式
c:输出整数对应的 Unicode 字符
d:输出整数的十进制方式
o:输出整数的八进制方式
x:输出整数的小写十六进制方式
X:输出整数的大写十六进制方式
>>> "{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(425)
'110101001,Ʃ,425,651,1a9,1A9'
>>> "{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(45)
'101101,-,45,55,2d,2D'
>>> "{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(15)
'1111,\x0f,15,17,f,F'
e:输出浮点数对应的小写字母 e 的指数形式
E:输出浮点数对应的大写字母 E 的指数形式
f:输出浮点数的标准浮点形式
%:输出浮点数的百分形式
>>> "{0:e},{0:E},{0:f},{0:%}".format(3.14)
'3.140000e+00,3.140000E+00,3.140000,314.000000%'
>>> "{0:.2e},{0:.2E},{0:.2f},{0:.2%}".format(3.14)
'3.14e+00,3.14E+00,3.14,314.00%'
>>> "{:.2f}".format(3.1415926) #输出小数点后两位
'3.14'
>>> "{:x}".format(1010) #输出整数的十六进制形式
'3f2'
>>> "{:.5}".format("so long") #输出字符串的前 5 位
'so lo'
>>> "{:-^10}".format("python") #居中并填充
'--python--'
>>> s="等级考试"
>>> "{}".format(s)
'等级考试'
>>> "{:>}".format(s)
'等级考试'
>>> "{:>15}".format(s) #左对齐
' 等级考试'
>>> "{:<15}".format(s) #右对齐
'等级考试 '
>>> "{:*<15}".format(s) #填充*
'等级考试***********'
>>> "{:*<.3 .3>
'等级考'
>>> "{:*<.3>
'1.23e+02'
>>> "{:.3}".format(123.456)
'1.23e+02'
>>> "{:.2}".format(123.456)
'1.2e+02'
>>> "{:.3f}".format(123.456)
'123.456'
>>> "{:.2f}".format(123.456) #有四舍五入功能
'123.46'
注:
字符宽度小于指定宽度,默认增加空格达到指定宽度;
字符宽度大于指定enter宽度,则完整输出字符宽度。
【真题1】给出如下代码
s="Alice"
print(s[::-1])
上述代码的输出结果是
A:Alice
B:ALICE
√ C:ecilA
D:Alic
注:数据起点,终点,步长
>>> a="abcdefg"
>>> a[2:3]
'c'
>>> a[2:4]
'cd'
>>> a[1:6:2]
'bdf'
【真题2】给出如下代码
s="abcdefghijklmn"
print(s[1:10:3])
上述代码的输出结果是
A:beh
B:adg
C:behk
D:adgj
【真题3】给出如下代码
a="Python"
b="A Superlanguage"
print("{:->10}:{:-<19}".format(a,b))
上述代码的输出结果是
A:----Python:----A Superlanguage
B:Python----:----A Superlanguage
C:The python language isa multimodel language
√ D:----Python:A Superlanguage----
>>> a="Python"
>>> b="A Superlanguage"
>>> print("{:->10}:{:-<19}".format(a,b))
----Python:A Superlanguage----
#{:->10} - 填充符 >右对齐 10宽度
#单个字符填充,右对齐,宽度为10个
#{:-<19} 左对齐,宽度为19