使用pyformat设置条件格式

给定一些变量

flag = True
x = "hello"
y = "world"

我想打印以下字符串:

如果为flag is True,则为"hello world";如果为flag is False,则为"hello 'world'"。这可以使用以下语句来完成:

print("{} {}".format(x, y if flag else "'{}'".format(y)))

问题是,这样的条件格式可以直接使用pyformat指定吗?也就是说,可以根据某个变量指定不同的格式字符串吗?

一种解决方案可能是执行两种格式:

'{{}} {}'.format("{}" if flag else "'{}'").format(x, y)

但这使得它很难阅读,因为您必须转义第一个字符串中未替换的格式。

转载请注明出处:http://www.yhsswkj.com/article/20230526/1560000.html