Python 巨蟒-刽子手的信已经猜到了

Python 巨蟒-刽子手的信已经猜到了,python,Python,我的刽子手代码目前有效,并且会为每一个错误的猜测扣除寿命,但是如果用户已经猜到了一个字母,并重试该字母,它仍然会扣除一个寿命,但应该说已经发生了错误。 我的代码是: def playGame(word, lives): lst=[] dct = start(word, lives) 1: print("Please enter 1 letter") elif letter in lst: prin

我的刽子手代码目前有效,并且会为每一个错误的猜测扣除寿命,但是如果用户已经猜到了一个字母,并重试该字母,它仍然会扣除一个寿命,但应该说已经发生了错误。 我的代码是:

def playGame(word, lives):
    lst=[]
    dct = start(word, lives)

       1:
            print("Please enter 1 letter")

        elif letter in  lst:
            print("Already in list")

        else:
            count = updatelives(dct, letter)
            print(letter,"occurred", count, "times")
    if guess(dct):
        print(dct["secret"])
        print("Well done, you guessed the word")
    else:
        print("You've run out of guesses.")
        print("The word was", dct["secret"])
    return
我试着创建一个空列表,在输入的每个字母后面加上一个elif语句,上面写着“elif letter in lst:print(“Error”),但即使不是重复的,错误仍然会继续。我该怎么处理呢


我不确定您是否需要查看代码的任何其他部分,但这是主要部分

在检查是否已在列表中之前,您可以添加他们的猜测:

lst.append(letter)
...
elif letter in  lst:
    print("Already in list")

因此,它将始终在列表中

在检查它是否已在列表中之前,请附加他们的猜测:

lst.append(letter)
...
elif letter in  lst:
    print("Already in list")

因此它将始终在列表中

您是否可以包括
def guess(dictionary)
函数和
updatelives()
对于该问题,将不正确的字母挂起到空列表中,并引用对该列表的猜测听起来是一个很好的方法,您能展示一下您的尝试吗?我更新了主postcan,您包括了
def guess(dictionary)
函数?和
updatelives()
对于这个问题,将不正确的字母添加到一个空列表中,并引用对该列表的猜测听起来是一个很好的方法,你能展示一下你的尝试吗?我更新了主要帖子以更清晰…添加你的
lst.append(字母)
到else语句中,这样它只有在完成所有检查后才会被追加到列表中。如果您使用一个设置的数据结构,这样查找结果可能会更好,以便更清楚一些……添加您的
lst.append(字母)
在else语句中,这样它只会在完成所有检查后被追加到列表中。如果您使用一个设置的数据结构,则可能会更好,以便查找为O(1)。