我只是尝试在包含许多随机花括号的文本上使用Python的.format()
。它不起作用,因为.format()
试图替换单个花括号内的所有内容。在做了一些阅读之后,似乎我有三个糟糕的选择:
%
- 这似乎已经过时了什么是最佳选择?有更好的选择吗?
答案 0 :(得分:1)
这是一个简单的方法:
>>> my_string = "Here come the braces : {a{b}c}d{e}f"
>>> additional_content = " : {}"
>>> additional_content = additional_content.format(42)
>>> my_string += additional_content
>>> my_string
'Here come the braces : {a{b}c}d{e}f : 42'
此外,您可以创建一个功能来加倍大括号:
def double_brace(string):
string = string.replace('{','{{')
string = string.replace('}','}}')
return string
my_string = "Here come the braces : {a{b}c}d{e}f"
my_string = double_brace(my_string)
my_string += " : {}"
my_string = my_string.format(42)
print(my_string)
输出:
>>> Here come the braces : {a{b}c}d{e}f : 42