我需要print(f"" + xx)
才能输出text aaa
但它输出{x}
我怎样才能做到这一点?
我已经尝试过使用 printf 和 .format,但无法使其中任何一个工作
x = "aa"
xx = "text {x}"
x = "aaa"
print(f"" + xx)
您需要将尝试打印的变量放在f"{}"
:
x = "aa"
xx = "{x}"
x = "aaa"
print(f"{x}")
否则,xx
实际上是"{x}"
的,不会展开。
我认为你想使用str.format
,而不是f字符串。
xx = "text {x}"
x = "aaa"
print(xx.format(x=x)) # -> text aaa
或者不明确传递x
:
print(xx.format(**locals())) # -> text aaa