如何在Python f-string中指定字面字符字符串的宽度?

4
在Python 3.6及以上版本中,可以使用f-string在特定列宽中打印整数字面量,例如:
print(f"{1:10}{2:10}{3:10}")

如何使用字符串文字执行类似的操作?即,如何在10个字符列中打印"One"、"Two"和"Three",而不是打印1、2和3?

是否可以使用单行代码的f-string来完成,还是必须像下面这样编码?

a = "One"
b = "Two"
c = "Three"
print(f"{a:10}{b:10}{c:10}"
1个回答

10

你可以使用以下格式在字符串中编写一行代码:

print(f"{'One':>10}")
#        One

在此处查看文档请注意相关部分:

>将字段强制右对齐,以适应可用空间(这是数字的默认值)

(已添加强调)

这就是为什么格式化数字时不需要使用>的原因。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接