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



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

我的主要问题是,在尝试确定字符串的点值时,我会考虑三个因素:长度、每个字母的值(基于 Scrabble 值)以及它是否是真实的单词。我下载了在这里找到的字典。这个文件在我的 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()

我也尝试了堆栈溢出的解决方案。这也没有给我任何可行的解决方案。每次尝试时,它都不会崩溃有任何错误 - 它每次都只是转到 else 语句。如果这个问题得到解决,我将不胜感激。我已经把头撞在键盘上两天了。

提前致谢

你不需要 else 语句。将实词初始化为 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()

相关内容

  • 没有找到相关文章

最新更新