在文本文件中搜索给定字符串的用户

时间:2013-02-02 15:37:33

标签: file text python-3.x full-text-search

我编写了一个工作游戏,它为用户提供了7个字母的随机字符串,用户必须只使用这些字母组合单词和非单词,每个字母只使用一次。这已经几近完善,偶尔会有一些错误。

我的主要问题是,在尝试确定字符串的点值时,我会考虑三个因素:长度,每个字母的值(基于拼字游戏值)以及它是否是真实的单词。我下载了here字典。 这个文件在我的Ubuntu计算机上保存为.txt文件,我使用了几种不同的方法在文件中搜索输入(因为文件中包含大写字母的所有单词,我设置变量'capital'通过input.upper().累加到(length+lettervalues) * realword积分。如果realword == 2,得分加倍

dictionary = open('wordlist.txt', 'r')
for line in dictionary:
    if capitals in line:
        realword = 2
    else:
        realword = 1
dictionary.close()

我也在stackoverflow尝试了解决方案。 这也没有给我任何有效的解决方案。每次尝试,都不会因为有任何错误而崩溃 - 它只是每次都会转到else语句。如果这个问题得到解决,我将非常感激。我已经在键盘上敲了两天头。

提前致谢

1 个答案:

答案 0 :(得分:1)

您不需要else语句。将realword初始化为1,只有在字典中找到它并且中断时才更改为2。此外,大多数词典在同一行上都有单词和含义,因此请尝试将其拆分,即选择空格键之前的第一个单词。

capitals= input('enter word').upper()

realword = 1
dictionary = open('wordlist.txt', 'r')
for line in dictionary:
    if capitals == line.split()[0]:
        realword = 2
        break

print (realword)
dictionary.close()