比较两个文本文件并删除python中的重复项

2022-01-10 00:00:00 python text duplicates

问题描述

我有两个文本文件,file1file2.

I have two text files, file1 and file2.

File1 包含一堆随机单词,而 file2 包含我想在出现时从 file1 中删除的单词.有没有办法做到这一点?

File1 contains a bunch of random words, and file2 contains words that I want to remove from file1 when they occur. Is there a way of doing this?

我知道我可能应该在脚本中加入我自己的尝试,至少是为了显示努力,但老实说,这很可笑,不会有任何帮助.

I know I probably should include my own attempt at a script, to at least show effort, but to be honest it's laughable and wouldn't be of any help.

如果有人至少可以提供关于从哪里开始的提示,将不胜感激.

If someone could at least give a tip about where to start, it would be greatly appreciated.


解决方案

获取每个单词:

f1 = open("/path/to/file1", "r") 
f2 = open("/path/to/file2", "r") 

file1_raw = f1.read()
file2_raw = f2.read()

file1_words = file1_raw.split()
file2_words = file2_raw.split()

如果您想要 file1 中不在 file2 中的唯一单词:

if you want unique words from file1 that aren't in file2:

result = set(file1_words).difference(set(file2_words))

如果您关心从 file1 的文本中删除单词

if you care about removing the words from the text of file1

for w in file2_words:
    file1_raw = file1_raw.replace(w, "")

相关文章