[英]Words Search in a txt document, python
我有这个简单的代码,它读取一个 txt 文件并接受用户的一个词来检查该词是否在 txt 文档中。 看起来这只适用于一个单词。 我必须修改此代码,以便用户可以输入两个或更多单词。 例子; GOING HOME
而不仅仅是HOME
。 请提供任何帮助。
word = input('Enter any word that you want to find in text File :')
f = open("AM30.EB","r")
if word in f.read().split():
print('Word Found in Text File')
else:
print('Word not found in Text File')
我不确定这正是您正在寻找的
f = open("AM30.EB","r")
word_list = []
while True:
word = input('Enter any word that you want to find in text File or 1 to stop entering words :')
if word == "1": break
word_list.append(word)
file_list = f.read().split()
for word in word_list:
if word in file_list:
print("Found word - {}".format(word))
这些是区分大小写的解决方案!
单独查询中的所有单词:
words = input('Enter all words that you want to find in text File: ').split()
f_data = []
with open("AM30.EB", "r") as f:
f_data = f.read().split()
results = list(map(lambda x: any([y == x for y in f_data]), words))
print("Found ")
for i in range(len(words)):
print(f"'{words[i]}'", end="")
if i < len(words) - 1:
print("and", end="")
print(f": {all(results)}")
查询中的任何单词:
words = input('Enter any word that you want to find in the text File: ').split()
f_data = []
with open("AM30.EB", "r") as f:
f_data = f.read().split()
results = list(map(lambda x: any([y == x for y in f_data]), words))
if any(results):
for i in range(len(words)):
print(f"Found '{words[i]}': {results[i]}")
查询中的确切短语:
phrase = input('Enter a phrase that you want to find in the text File: ')
f_data = ""
with open("AM30.EB", "r") as f:
f_data = f.read()
print(f"Found '{phrase}': {f_data.count(phrase) > 0}")
这是区分大小写的,并单独检查每个单词。 不确定这是否是您要找的,但希望对您有所帮助!
file1 = open('file.txt', 'r').read().split()
wordsFoundList = []
userInput = input('Enter any word or words that you want to find in text File :').split()
for word in userInput:
if word in file1:
wordsFoundList.append(word)
if len(wordsFoundList) == 0:
print("No words found in text file")
else:
print("These words were found in text file: " + str(wordsFoundList))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.