我必须通过文本文件搜索给定单词的字谜。该文本文件每行一个字。到目前为止,我已经设法编写一个函数,它可以从一个给定的单词中创建一个字典,其中的关键字是单词中的一个字母,它的值是该单词在单词中的次数。第二个函数循环遍历文本文件的每一行,创建相同键和值的第二个字典,并比较这两个字符。如果两者相等,则该函数会将该单词添加到列表中。一旦函数在文本文件中循环完成,它应该打印字符列表,但是它将打印一个空白列表。这是我的代码,我不知道它出错的地方。如何搜索给定单词的字谜文本文件
这是用于创建给定单词的字典。
word= input("Enter a word: ")
letterdict = {}
def count_letters(word,letterdict):
for letter in word:
letterdict[letter] = letterdict.get(letter,0) + 1
return letterdict
print(count_letters(word,letterdict))
这是通过文本文件,循环和比较
def search():
count_letters(word,letterdict)
anagrams = []
letterdict2={}
f = open('EnglishWords.txt', 'r')
for letter in f:
letterdict2[letter] = letterdict2.get(letter,0) + 1
if letterdict == letterdict2:
anagrams.append[f]
letterdict2.clear()
f.close()
anagrams.sort() #put list in alphabetical order
return print(anagrams)
search()
对于f中的字母'会产生线条,而不是字母 – robyschek