Python 比较两个文件以打印与单词匹配的行
我有两个文本文件,一个像这样Python 比较两个文件以打印与单词匹配的行,python,python-3.x,search,text,printing,Python,Python 3.x,Search,Text,Printing,我有两个文本文件,一个像这样 狗 猫 鱼 还有一个像这样的文件 猫跑了 鱼在游泳 鹦鹉在唱歌 我希望能够搜索第二个文本文件并打印包含第一个文本文件中的单词的行,例如,此文件的输出为 猫跑了 鱼在游泳,像这样的东西怎么样。我们从第一个文件中提取关键字并存储它们,然后在阅读第二个文件时在打印之前引用它们 # file1.txt # dog # cat # fish # file2.txt # The cat ran # The fish swam # The parrot sang # read
狗
猫
鱼
还有一个像这样的文件
猫跑了
鱼在游泳
鹦鹉在唱歌
我希望能够搜索第二个文本文件并打印包含第一个文本文件中的单词的行,例如,此文件的输出为
猫跑了
鱼在游泳,像这样的东西怎么样。我们从第一个文件中提取关键字并存储它们,然后在阅读第二个文件时在打印之前引用它们
# file1.txt
# dog
# cat
# fish
# file2.txt
# The cat ran
# The fish swam
# The parrot sang
# reading file1 and getting the keywords
with open("file1.txt") as f:
key_words = set(f.read().splitlines())
# reading file2 and iterating over all read lines
with open("file2.txt") as f:
all_lines = f.read().splitlines()
for line in all_lines:
if any(kw in line for kw in key_words): # if any of the word in key words is in line print it
print(line)
你必须展示你迄今为止所做的一切。仅仅说你的目标是不够的。你应该分享代码或者至少是你计划使用的方法。在帮助您的过程中,可能有一些我们不知道的未知数。提示:如果第一个文件只包含单词,请将它们保存在
集合中
建议在发布问题之前搜索现有的解决方案,这一个似乎类似-请显示您已经尝试了多少次感谢您,您不知道我已经盯着这个简单的问题看了多久没有问题,很乐意帮助。这将随着文件的大小而爆炸