【发布时间】:2011-11-30 17:08:56
【问题描述】:
我正在为我的编程课做一个项目,这是我正在努力的 5 件事。感谢您的帮助!
- 有效单词列表将在 words.txt 中提供
- 要求只接受 2-8 个字母组合的输入
- 例如。输入将是“马球”
- 从 words.txt 中查找此输入的所有可能的有效单词
-
可能的结果,“poo”“pool”“loop”“polo”
import random import itertools file_name='words.txt' DEBUG=True def load_words(): try: f=open(file_name,'r') str1=f.read() f.close() except: print('Problem opening the file',file_name) list1=[] list1=str1.split() if DEBUG: length=len(list1) print('Number of words is',length) print(list1[0],list1[length//2],list1[-1]) for i in range(10): print(list1[random.randint(1,length)]) return(list1) def is_valid(str1,list1): valid=False count=0 if str1 in list1: valid=True return valid def generate(letters): print(len(letters)) count=1 answers=[] for length in range(2,len(letters)+1): for x in itertools.permutations(letters,length): word='' for let in x: word+=let print(word) if is_valid(word): answers.append(word) count+=1 print(count,x) return(answers) def main(): words=load_words() generate('abcde') guess=input('Check a word') if is_valid(guess.upper(),words): print(guess,'is a real word') else: print(guess,'is not a real word') main()
【问题讨论】:
-
您希望帮助回答的实际问题是什么?简单地发布您的项目及其目标并不是一个具体的问题。
-
现在我收到一个错误“TypeError:列表索引必须是整数,而不是模块”我无法弄清楚这是在哪里发生的。
标签: python permutation itertools