作者:虾米
链接:https://www.zhihu.com/question/54933434/answer/216435738
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
问的是%操作符(字符串格式化,string formatting),说明如下:%[(name)][flags][width].[precision]typecode(name)为命名flags可以有+,-,’ ‘或0。+表示右对齐。-表示左对齐。’ '为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐。0表示使用0填充。width表示显示宽度precision表示小数点后精度----------------以下是类型码--------------------%s 字符串 (采用str()的显示)%r 字符串 (采用repr()的显示)%c 单个字符%b 二进制整数%d 十进制整数%i 十进制整数%o 八进制整数%x 十六进制整数%e 指数 (基底写为e)%E 指数 (基底写为E)%f 浮点数%F 浮点数,与上相同%g 指数(e)或浮点数 (根据显示长度)%G 指数(E)或浮点数 (根据显示长度)%% 字符"%"------------------举例---------------------->>> print("%6.3f" % 2.3)
2.300
第一个"%"后面的内容为显示的格式说明,6为显示宽度,3为小数点位数,f为浮点数类型
第二个"%"后面为显示的内容来源,输出结果右对齐,2.300长度为5,故前面有一空格
print("%+10x" % 10)
+a
x为表示16进制,显示宽度为10,前面有8个空格
print("%-5x" % -10)
-a
“%-5x” 负号为左对齐,显示宽度为5,故-a后面有3个空格
pi=3.1415
print (“pi的值是%s”%pi)
pi的值是3.1415
print (“pi的值是%.8f”%pi)
pi的值是3.14150000上面的width, precision为两个整数。我们可以利用*,来动态代入这两个量。比如:>>> print("%10.*f" % (4, 1.2))
1.2000---------其他补充----------%的另一种用法是数学运算:取余数(remainder)>>> 7%2
1