繁体   English   中英

用python字符串格式方法覆盖{}占位符

[英]Override {} placeholders in python string format method

我试图使用python format方法在字符串中格式化我的占位符。

问题是字符串内部包含{} ,字符串方法无法解析它。

my_value='v'
'{"k":"{value}"}'.format(value=my_value)    # This results in error due to outside {}
# Desired Output '{"k":"v"}'

我该如何解决这个问题?

  • 我可以将其转换为json然后替换,但我更喜欢,如果字符串format可以做到这一点

您不需要覆盖某些内容,您可以通过将它们加倍来转义大括号,如格式字符串语法的文档中所述:

如果您需要在文字文本中包含大括号字符,可以通过加倍{{}}来对其进行转义。

>>> '{{"k":"{value}"}}'.format(value=my_value)
'{"k":"v"}'

如果您打算在某些时候使用它们,这同样适用于格式化的字符串文字:

>>> f'{{"k": "{my_value}"}}'
'{"k": "v"}'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM