【发布时间】:2021-12-23 13:10:17
【问题描述】:
对于以下行:
print("{0: <24}".format("==> core=") + str(my_dict["core"]))
我收到以下警告消息:
[consider-using-f-string] 格式化一个可以是 f-string 的常规字符串 [C0209]
我可以使用f-string 重新格式化它吗?
【问题讨论】:
-
你能提供 MWE 吗?
对于以下行:
print("{0: <24}".format("==> core=") + str(my_dict["core"]))
我收到以下警告消息:
[consider-using-f-string] 格式化一个可以是 f-string 的常规字符串 [C0209]
我可以使用f-string 重新格式化它吗?
【问题讨论】:
您可以将代码更改为print(f"{'==> core=': <24}{my_dict['core']}")。转换为字符串是隐式的。
【讨论】:
在您的情况下,重构将如下所示:
print(f"{'==> core=': <24}" + str(my_dict['core']))
基本上,你写的是f"{bar:...}",而不是"{0:...}".format(bar)。 (注意,您必须在 f 字符串中使用单引号,因为双引号会过早终止字符串。)
查看https://realpython.com/python-f-strings/ 了解 f-strings 的精彩介绍。
【讨论】:
f。我知道f"{bar:...}" 但我怎么能摆脱+ 部分
+。这是因为您使用的是常规字符串并在其上调用 .format。