我是编码新手。我试图构建一个简单的代码,它可以采用字母的子集并从基于文本的字典中返回一个有效的单词。
在下面的代码中,我要求用户输入一些字符(例如 abcdef),然后程序将从这些字母中生成单词。
现在我的问题是,这是在性能、代码长度和块序列方面做到这一点的最佳方法吗?如果没有,你能提出更好的方法吗?
#Read the dictionary
fh = open('C:\\english-dict2.txt')
dict = []
while True:
line = fh.readline()
dict.append(line.strip())
if not line:
break
fh.close()
#Input letters
letters = input("Please enter your letters: ")
letters_list=[]
for l in letters:
letters_list.append(l)
mini = 2 #default value
maks = len(letters_list)
mini = input("Minimum length of the word (default is 2): ")
if mini == "":
mini = 2 #default value
mini = int(mini)
#Here I create a new dictionary based on the number of letters input or less than.
newdic=[]
for words1 in dict:
if len(words1) <= maks and len(words1)>= mini:
newdic.append(words1)
for words2 in newdic:
ok = 1
for i in words2:
if i in letters_list:
ok = ok * 1
else:
ok = ok * 0
if ok == 1:
print(words2)
慕沐林林
ibeautiful
尚方宝剑之说
相关分类