【发布时间】:2013-06-15 16:54:15
【问题描述】:
该程序生成字母组合并检查它们是否是单词,但是该程序非常慢,每秒只能生成几个单词。请告诉我为什么它很慢,以及我需要什么让它更快
import itertools
for p1 in itertools.combinations('abcdefghijklmnopqrstuvwxyz', 4):
with open('/Users/kyle/Documents/english words.txt') as word_file:
english_words = set(word.strip().lower() for word in word_file)
def is_english_word(word):
return word.lower() in english_words
print ''.join(p1),"is", is_english_word(''.join(p1))
【问题讨论】:
-
你的单词列表有多大?每个组合你读一次。
-
单词列表是所有英文单词的列表。
标签: python performance itertools words