似乎字符串格式化对连接字符串不起作用。通过连接,占位符按字面打印:
>>> print("{}" + " OK".format("Text"))
{} OK
但是,如果没有连接,格式将按原样打印:
>>> print("{} OK".format("Text"))
Text OK
旧式%格式化也会出现同样的问题。
如果我有一个很长的多行字符串,我想连接一个应该格式化的字符串,建议的方法是什么?
答案 0 :(得分:2)
您正在尝试在进行连接之前执行“格式化”操作。您可以使用括号来修复操作的优先级:
>>> the_string = ("{}" + " OK").format("Text")
>>> print(the_string)
Text OK
答案 1 :(得分:0)
您只需要修复括号:
print(("{}" + " OK").format("Text"))