替换字符串中的多个单词

时间:2014-02-05 13:58:51

标签: python

我有以下文字:

txt = "there was a nr opp rd bldg"

我需要用正确的拼写替换它们。所以我做了一个小替换词典

rep = {"rd": "road", "nr": "near","opp":"opposite","bldg":"building"} 

并使用以下代码:

def replace_all(text, rep):  
    for i, j in rep.iteritems():  
        text = text.replace(i, j)  
    return text 

replace_all(txt,rep)
print txt  

但输出变化..原因可能是什么?

1 个答案:

答案 0 :(得分:5)

函数replace_all更改局部变量text,然后返回它。

您的错误不是将返回的值分配给全局变量txt

使用txt = replace_all(txt,rep),它可以解决您的问题。