【发布时间】:2012-10-11 19:40:10
【问题描述】:
我想要一个程序在文件中查找字谜。例如:
>>>anagram('words.txt', 'top')
top
pot
该文件将包含一长串没有空格的单词。
tapmatlamebrainfamelookcookkoolkoocnamemane
这是我当前的代码:
def anagrams(filename, word):
infile = open(filename, 'r')
if not word:
return ['']
ret = []
for i, d in enumerate(word):
perms = anagrams(word[:i] + word[i+1:])
for perm in perms:
ret.append(d + perm)
for i in ret:
if i in infile:
print (i)
else:
pass
【问题讨论】:
-
你希望如何分隔文本文件中的单词以不匹配 glotpaul 之类的内容
-
现在我运行一个置换函数,然后查找文件中是否有这些函数。但这似乎不起作用,因为它什么也不返回
-
你的问题很模糊。您能否提供一个示例输入和输出?
-
@inspectorG4dget 顶部再读一遍
-
@JasonSchayer:你的问题仍然模棱两可。你使用
itertools.permutations的目的是什么?你会接受 anagram finder 函数返回的非英语单词吗?