从文本文件中创建单词列表,并按输入字母搜索这些单词

时间:2011-09-24 11:35:15

标签: python list

好的,我是新手,所以我很欣赏任何线索和暗示。这是我在这里的第一个问题,对于任何凌乱的事情都很抱歉!我已经在其他类型的列表和魔术技巧上找到了很多帮助,还有一些东西,但并不多,我可以在这个中使用。

我想从我的小文本文件(包含Universe中的所有单词)中创建一个列表。首先,我希望用户写一些字母,然后我想列出包含这些字母的单词。例如,字母为“abcdeir”,列表将变为“bad”,“bar”,“beard”等。

这是我到目前为止所做的:

file = open("allthewords.txt", "r")

3 个答案:

答案 0 :(得分:1)

我会使用套装:

letters = set("abcdeir")
with open("allthewords.txt", "r") as f:
  for word in f:
    if set(word) <= letters: # check that all letters of `word` are in `letters`
      print word

您可以根据需要进行调整。

答案 1 :(得分:0)

你可以简单地用伪代码写出来,然后执行它:

letters = "abcdeir" # Alternatively,  letters = raw_input('Input letters: ')
with open("allthewords.txt", "r") as file:
  for word in file:
    if all(character in letters for character in word):
      print(word)

答案 2 :(得分:0)

如果你的文件中有些单词会在同一行,你可以使用正则表达式。

import re
with open('your_file.txt','r') as f: 
    print re.findall(r"\b[abcdeir]+\b", f.read())