【问题标题】:python how to find all word matches between two text filespython如何查找两个文本文件之间的所有单词匹配
【发布时间】:2022-01-14 13:58:09
【问题描述】:

我有两个文本文件,每个包含大约 370k 个单词,每行一个单词。其中一个文件是英文单词列表,另一个是随机乱码单词列表。我基本上想检查是否有任何随机单词实际上是真实单词,所以我想将一个文件中的每一行与另一个文件中的每一行进行比较。

我尝试了以下方法:

f1 = open("file1.txt", "r")
f2 = open("file2.txt", "r")
for line in f1:
    if line in f2:
        print(line)

这给了我大约 3 个结果,然后程序莫名其妙地结束而没有错误。

有更好的方法吗?

【问题讨论】:

  • 它结束是因为你在第一次运行外循环时读到了 f2 的末尾。
  • @nicomp 如何跳回每个循环的 f2 开头?
  • 在循环内打开和关闭f2

标签: python string file


【解决方案1】:

据我所知,您想要两个列表中的intersection,您可以试试这个:

f1 = open("file1.txt", "r")
f2 = open("file2.txt", "r")

print(set(f1.readlines()).intersection(f2.readlines()))

f1.close()
f2.close()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    • 2022-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多