选择输入后进程结束

3

我是一名新手程序员,正在学习Python,并尝试构建一个猜数字游戏。我尝试了用户输入1、2、3(难度),但在运行后,一旦输入难度,它就自动结束了。

def puzzle():
    print("There are 3 puzzles:\n 1. Easy\n 2. Normal\n 3. Hard")
    print("\nWhich will you pick?")
    player_selections = input("Enter a number:")
    if player_selections == 1:
        print("I'm tall when I'm young, and I'm short when I'm old. What am I?")
        answer1 = "Candle", "candle"
        guess1 = ""
        guess_limit1 = 5
        guess_count1 = 0
        out_of_guesses1 = False
        while answer1 != guess1 and not out_of_guesses1:
            if guess_count1 < guess_limit1:
                guess1 = input("What is your guess?:")
                guess_count1 += 1
                print("Wrong! Try again")
            else:
                out_of_guesses1 = True
        if out_of_guesses1:
            print("Out of Guesses, You Lose!")
        else:
            print("You guessed the word. You win!")

    elif player_selections == 2:
        print("I'm tall when I'm young, and I'm short when I'm old. What am I?")
        answer2 = "Candle", "candle"
        guess2 = ""
        guess_limit2 = 5
        guess_count2 = 0
        out_of_guesses2 = False
        while answer2 != guess2 and not out_of_guesses2:
            if guess_count2 < guess_limit2:
                guess2 = input("What is your guess?:")
                guess_count2 += 1
                print("Wrong! Try again")
            else:
                out_of_guesses2 = True
        if out_of_guesses2:
            print("Out of Guesses, You Lose!")
        else:
            print("You guessed the word. You win!")

puzzle()
1个回答

0
我看到的错误是:
if player_selections == 1:

但应该是这样的:

if player_selections == '1':

并且:

elif player_selections == '2':

那是因为输入数据存储在字符串中。并且进程结束,因为if语句中没有True表达式。
希望能帮到你!如果您对我的答案感到满意,我将感激您接受它(左侧有一个勾号)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接