我必須通過文本文件搜索給定單詞的字謎。該文本文件每行一個字。到目前爲止,我已經設法編寫一個函數,它可以從一個給定的單詞中創建一個字典,其中的關鍵字是單詞中的一個字母,它的值是該單詞在單詞中的次數。第二個函數循環遍歷文本文件的每一行,創建相同鍵和值的第二個字典,並比較這兩個字符。如果兩者相等,則該函數會將該單詞添加到列表中。一旦函數在文本文件中循環完成,它應該打印字符列表,但是它將打印一個空白列表。這是我的代碼,我不知道它出錯的地方。如何搜索給定單詞的字謎文本文件
這是用於創建給定單詞的字典。
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