替换文本文件中的多个单词

时间:2017-07-16 18:53:11

标签: python python-2.7

我有一个文本文件,我必须替换多个单词。

到目前为止

代码:

    NUMBEROFAPNS = raw_input("Please enter the APNS needed in the LTE profile: ")
    NUMBEROFAPNS = int(NUMBEROFAPNS)
    i = 0
    for i in range(NUMBEROFAPNS):
        APNS[i] = raw_input("enter the APN" + str(i+1))
        i = i + 1

    n = 0
    for n in range(NUMBEROFAPNS): 
       REPLACEAPN_input= (dict.values(APNS))[0]



       MAKEITDEFAULT_input=int(0+1)
       APNheader = str(pwd) + "/APNCREATION.txt"
       APNread = open(APNheader, "r")
       s=APNread.read()



       reps= {'REPLACEAPN':REPLACEAPN_input,'MADEIT':str(MAKEITDEFAULT_input),}
       txt = self.replace_all(s, reps)
       print txt 





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

正在读取的文本文件如下所示

<epsPdnContext>
<apn>REPLACEAPN</apn>
<contextId>MADEIT</contextId>

我可以将此处的REPLACEAPN字替换为我提供的任何输入,但MADEIT字根本不会替换。 请让我知道我在这里做错了什么。

1 个答案:

答案 0 :(得分:0)

这是因为你的return语句在for循环中。如果你把它移出(也就是说,用一个标签去除它),它应该可以工作。