问题描述:
format()方法的格式控制中槽或者叫占位符里面可以有哪些内容呢?
问题解答:
格式控制标记可以用于指定如何格式化传递给 format()
方法的参数。下面是一些常用的格式控制标记:
-
对齐:
<
:左对齐>
:右对齐^
:居中对齐
-
宽度和填充:
<参数序号>:<宽度>
:指定字段的最小宽度<参数序号>:<填充字符><对齐标记><宽度>
:指定填充字符和对齐方式
-
数字格式化:
<参数序号>:<填充字符><对齐标记><宽度>.<精度>f
:浮点数格式化,精度指定小数点后的位数<参数序号>:<填充字符><对齐标记><宽度>.<精度>e
:科学计数法格式化,精度指定有效数字位数<参数序号>:<填充字符><对齐标记><宽度>d
:整数格式化
-
其他:
:
:如果省略了所有的格式化选项,则表示简单地插入参数值到字符串中
例子1
左对齐,对齐方式不写就是默认是左对齐。
# 左对齐、宽度为10
print("{:10}".format("Hello"))
#结果
Hello
右对齐和居中对齐
# 右对齐、宽度为10
print("{:>10}".format("Hello"))
# 居中对齐、宽度为10
print("{:^10}".format("Hello"))
#结果
Hello
Hello
众所周知,>是右对齐,<是左对齐,但是容易记忆混淆,我们有个记忆妙招,就是大于号或者小于号长得像箭头,箭头指向哪就是哪个方向的对齐。
例子2.填充
# 填充字符为*、右对齐、宽度为10
print("{:*^10}".format("Hello"))
#结果
**Hello***
例子3槽里嵌套槽
结果如下
例子4千位分隔符
number = 1000000
formatted_number = "{:,}".format(number)
print(formatted_number)
#结果
1,000,000
例子5小数精度
# 浮点数格式化,宽度为10、精度为2
print("{:10.2f}".format(3.1415926))
#结果
3.14
例子6字符串精度
print("{:.5}".format("全国二级计算机考试"))
#结果
全国二级计
例子7科学计数法格式化
# 科学计数法格式化,宽度为10、精度为2
print("{:10.2e}".format(123456789))
#结果
1.23e+08
例子8整数类型格式化
print("{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(276))
#结果
100010100,Ť,276,424,114,72
# 整数格式化,宽度为5
print("{:5d}".format(42))
#结果
42
例子9浮点数格式化输出
print("{0:e},{0:E},{0:f},{0:%}".format(3.141))
#结果
3.141000e+00,3.141000E+00,3.141000,314.100000%