有没有一种方法可以通过替换将"1 plus 3 minus 4"转换为"1 + 3 - 4"并以此进行计算?

最佳答案

是的,您可以使用str.replace用符号替换单词,然后使用eval评估计算:

def evaluate(s):
    replacements = {'plus': '+', 'minus': '-'} # define symbols to replace
    for word in replacements:
        s = s.replace(word, replacements[word]) # replace them
    return eval(s) # evaluate calculation

>>> s = "1 plus 3 minus 4"
>>> evaluate(s)
0

08-25 00:59