expr='9subtract5equal4'
expr = expr.replace('subtract', '-')
expr = expr.replace('plus', '+')
expr = expr.replace('equal', '==')
Run Code Online (Sandbox Code Playgroud)
我觉得最后三行代码非常难看,所以我试图优化使用map和其他函数编程功能.但我找不到实现这一目标的好方法.有什么建议?
你可以这样做:
def replace_all(text, dic):
for i, j in dic.items():
text = text.replace(i, j)
return text
s = '9subtract5equal4'
d = {
'subtract': '-',
'plus': '+',
'equal': '==',
}
s = replace_all(s, d)
Run Code Online (Sandbox Code Playgroud)