要按顺序删除重复行,可以使用哈希集合来存储已经出现过的行。遍历整个文件,对于每一行,将其加入哈希集合中。如果已经存在于集合中,说明该行是重复行,可以将其删除。以下是一个示例代码:
def remove_duplicate_lines(filename):
lines_seen = set() # 哈希集合用于存储已经出现过的行
output_filename = "output.txt" # 输出文件名
with open(filename, "r") as file:
with open(output_filename, "w") as output_file:
for line in file:
if line not in lines_seen:
output_file.write(line)
lines_seen.add(line)
# 将输出文件重命名为原文件名,覆盖原文件
os.rename(output_filename, filename)
此代码将从filename
指定的文件中读取行,并将其写入output.txt
中,只保留唯一的行。最后,将输出文件重命名为原文件名,覆盖原文件。
使用示例:
remove_duplicate_lines("input.txt")