“<”和“>”在格式化中起什么作用?
what does the "<" and ">" do in formatting?
在 Python 文档中,它说对齐 '<'
强制字段在可用 space.
内左对齐
这是否意味着这行代码将每个变量对齐 10 space 秒或至少 10 space 秒?
print("{:<10} {:<10} {:<10} £{:<10} £{:<10}".format(GTIN,product,Quantity,indprice,finprice))
<10
格式使每个字段 至少 10 个字符宽,将值的 str()
转换放在字段的左侧部分。因此,'foo'
(3 个字符长)的值将以右侧的 7 个空格结束,以创建 10 个字符的字符串,这就是替换 {..}
字段的填充字符串。
如果该值需要超过 10 个字符,则该字段将替换为该值的全文;宽度是最小长度,而不是最大长度。
所以每个 {:<10}
字段被替换为至少 10 个字符宽的内容,使用空格来弥补值右侧的差异。
演示,将值填充到左对齐的字段中,最小宽度为 5:
>>> for value in ('f', 'foo', 'foobar'):
... formatted = '>{:<5}<'.format(value)
... print(len(value), len(formatted), formatted)
...
1 7 >f <
3 7 >foo <
6 8 >foobar<
该值左对齐到最小字段宽度,但 foobar
更长,因此字段的总输出长度增长以匹配。
在 Python 文档中,它说对齐 '<'
强制字段在可用 space.
这是否意味着这行代码将每个变量对齐 10 space 秒或至少 10 space 秒?
print("{:<10} {:<10} {:<10} £{:<10} £{:<10}".format(GTIN,product,Quantity,indprice,finprice))
<10
格式使每个字段 至少 10 个字符宽,将值的 str()
转换放在字段的左侧部分。因此,'foo'
(3 个字符长)的值将以右侧的 7 个空格结束,以创建 10 个字符的字符串,这就是替换 {..}
字段的填充字符串。
如果该值需要超过 10 个字符,则该字段将替换为该值的全文;宽度是最小长度,而不是最大长度。
所以每个 {:<10}
字段被替换为至少 10 个字符宽的内容,使用空格来弥补值右侧的差异。
演示,将值填充到左对齐的字段中,最小宽度为 5:
>>> for value in ('f', 'foo', 'foobar'):
... formatted = '>{:<5}<'.format(value)
... print(len(value), len(formatted), formatted)
...
1 7 >f <
3 7 >foo <
6 8 >foobar<
该值左对齐到最小字段宽度,但 foobar
更长,因此字段的总输出长度增长以匹配。