Я пытаюсь создать скрипт, где я могу ввести анаграмму любого слова, и он будет читать из словаря, чтобы узнать, есть ли соответствие (например, estt возвращает : = unjumble слова: тест)Anagram не соответствует up (строка в список), Python
Если есть два матча он запишет (Исх estt возвращается:. есть несколько совпадений: тест, брусчатка (при условии, брусчатка слово лол)
Я не мог даже получить один матч, продолжает возвращаться «без матча», хотя, если я посмотрю на свой список, сделанный из словаря, я вижу слова.
H ere код, который я написал до сих пор
def anagrams(s):
if s =="":
return [s]
else:
ans = []
for w in anagrams(s[1:]):
for pos in range(len(w)+1):
ans.append(w[:pos]+s[0]+w[pos:])
return ans
dic_list = []
def dictionary(filename):
openfile = open(filename,"r")
read_file = openfile.read()
lowercase = read_file.lower()
split_words = lowercase.split()
for words in split_words:
dic_list.append(words)
def main():
dictionary("words.txt")
anagramsinput = anagrams(input("unjumble words here: "))
for anagram in anagramsinput:
if anagram in dic_list:
print(anagram)
else:
print("no match")
break
Это как если бы анаграмма не была в dic_list. что происходит?
Можем ли мы увидеть words.txt –
Я сделал это очень мало. https://docs.google.com/file/d/0B4dH2vTP52jxMzJROXd5akNlOEtHbGl1bjl4TGI5OHkyMmQw/edit?usp=docslist_api – Archie
Вы проверили, что dic_list содержит правильные значения? –