首页 > 解决方案 > 为什么我的 Python 用户输入代码认为输入不正确

问题描述

我是编码新手,想通过用户输入来训练和做我自己的事情。用户输入代码不起作用。这是一个猜数字游戏。当我猜对了数字时,它会显示“不正确”。

import random

while True:
    intro = input("Hello! Want to play a game?(Y or N)")
    if intro.lower() == "y" or intro.lower() == "yes":
            time.sleep(0.1)
            print("Let's play a number-guessing game!")
            max_num_in = input("Pick a big number")
            max_num = int(max_num_in)
            time.sleep(0.1)
            min_num_in = input("Now pick a smaller number")
            min_num = int(min_num_in)
            rndm_num = int(random.randrange(min_num,max_num,1))
            print(rndm_num)
            rndm_in = input("Guess a number between the maximum and minumum numbers!")

            if rndm_num == rndm_in:
                print("Whoo hoo! You did it! You guessed the number! The number was" + str(rndm_num))
            elif rndm_in != rndm_num:
                print("Whoops, wrong number. Please try again.(Trials left = 2)")
                rndm_in1 = input("Guess again!")
                if rndm_in1 == rndm_num:
                    print("Whoo hoo! You did it! You guessed the number! The number was" + str(rndm_num))
                elif rndm_in1 != rndm_num:
                    print("You didn't get it right. Please try again (Trials left = 1)")
                    rndm_in2 = input("Guess again!")
                    if rndm_in2 == rndm_num:
                        print("Whoo Hoo! You finally did it! The number was" + str(rndm_num))
                    elif rndm_in2 != rndm_num:
                        print("Incorrect. The number was " + str(rndm_num))
    elif intro.lower() == "n" or intro.lower() == "no":
        print("Alright. Bye")

标签: pythonuser-input

解决方案


您的输入是字符串,使用 int() 函数 "5"!=5 将它们转换为 int


推荐阅读