Python: 从文件中删除特定字符串

-3 投票
1 回答
1010 浏览
提问于 2025-04-17 01:55

我在之前的帖子基础上做了一些修改,所以重新发一下。感谢之前给我建议的朋友们。不过我还是遇到了一些问题。

我有一个数据文件(这个文件很乱,没有结构),我需要从中删除一些特定的字符串。

这是我现在的做法,但没有任何效果:

infile = r"messy_data_file.txt" 
outfile = r"cleaned_file.txt"  

delete_list = ["firstname1 lastname1","firstname2 lastname2"....,"firstnamen lastnamen"] 

fin = open(infile,"") 
fout = open(outfile,"w+") 

for line in fin:     
    for word in delete_list:         
        line = line.replace(word, "")      

    fout.write(line) 

fin.close() 
fout.close() 

当我运行这个文件时,出现了以下错误:

NameError: name 'word' is not defined

1 个回答

1

我无法重现你遇到的错误;我在你的代码中看到的错误是空的模式字符串——要么加上"r",要么把它删掉,默认情况下是读取模式。

Traceback (most recent call last):
  File "test.py", line 6, in <module>
    fin = open(infile, "")
ValueError: empty mode string

除此之外,看起来没问题!

撰写回答