Python删除重复项并将其写入新文件
我想从文本文件中删除重复的行并写入两个新的文本文件:一个是不重复的输出文件,另一个是包含在原始文件中重复的行的文件Python删除重复项并将其写入新文件,python,Python,我想从文本文件中删除重复的行并写入两个新的文本文件:一个是不重复的输出文件,另一个是包含在原始文件中重复的行的文件 import re import sys lines_seen = set() # holds lines already seen lines_seen.clear() dups=open("dups.txt", "w") outfile = open("out.txt", "w") for line in open("input.txt", "r"): if line
import re
import sys
lines_seen = set() # holds lines already seen
lines_seen.clear()
dups=open("dups.txt", "w")
outfile = open("out.txt", "w")
for line in open("input.txt", "r"):
if line not in lines_seen: # not a duplicate
outfile.write(line)
lines_seen.add(line)
else:
dups.write(line)
lines_seen.clear()
outfile.close()
dups.close()
输出文件比原始文件小,这意味着删除了一些行;但是,复制的文件是空的,不会写入重复的行。因为要清除dups文件并再次写入,所以需要将其追加:
dups=open("dups.txt", "a")
你的代码对我有用。最后确保您读取的文件是正确的。此外,开始时不需要2个导入