我正在学习 python 并处理字符串,以找到使用字典进行字符串替换的更好方法
我有一个包含自定义占位符的字符串,如下所示:
placeholder_prefix = '$['
placeholder_suffix = ']'
dict={'key1':'string','key2':placeholders}
msg='This $[key1] contains custom $[key2]'
我希望占位符(“前缀后缀”和“键”)应替换为字典中的“值”,如下所示:
'该字符串包含自定义占位符'
我可以通过编写函数得到如下消息:“此[字符串]包含自定义[占位符]”:
def replace_all(text):
for key, value in brand_dictionary.iteritems():
text = text.replace(key, value).replace('$[', '[')
return text
我可以尝试不同的替换来删除“$[”和“]”,但这可以替换作为消息本身的一部分(而不是占位符的一部分)包含的任何字符(如“$”、“[”、“]”)。所以我想避免这种情况并仅替换自定义占位符。
我可以想到正则表达式(用于占位符),但由于我的消息包含多个键,所以看起来它可能没有用?
有没有更好的方法在 python 中做到这一点?
尝试这个:
dict={key1:'string',key2:placeholders}
msg='This {key1} contains custom {key2}'.format(**dict)
我跑的例子:
>>> msg="hello {a} {b}"
>>> t={"a":"aa","b":"bb"}
>>> msg="hello {a} {b}".format(**t)
>>> msg
'hello aa bb'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)