我想创造一个刽子手游戏。我要它一直打电话给x,打印新的单词,直到没有“uu”。我试过了,但吃角子老虎的时间总是让人耳目一新。它一直在重印。它不会更新值本身。

word = 'EVAPORATE'
wordlist = list(word)
dict = dict(enumerate(wordlist))

slots = list('_' * len(word))

x = input("Guess the letter: ")

def game():
    for a,b in dict.items():
        if b == x:
            slots[a] = x
            new_word = ' '.join(slots)
    print(new_word)

game()

最佳答案

这似乎对我有用:

word = 'EVAPORATE'
wordlist = list(word)
dict = dict(enumerate(wordlist))
slots = list('_' * len(word))
def game():
    while '_' in slots:
        x = input("Guess the letter: ")
        for a,b in dict.items():
            if b == x.upper():
                slots[a] = x
                new_word = ' '.join(slots)
        print(new_word)
game()

我在while中添加了一个def game():循环,这样代码将一直运行,直到插槽中没有下划线为止。然后我将x = input("Guess the letter: "移到while循环中,这样用户就可以一直有另一个猜测,直到单词完成。

07-24 09:29