有人能告诉我为什么我的代码不起作用吗?

numCat = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

print("Hello user, I am Inverted Cheese.\n")

username = input("What is your name?\n").capitalize()

print("Hello, " + username + "!")


while True:

    if input() == "hello":

        print("Hello, " + username + "!")

    elif input() == "cat":

        num = randrange(0,10)

        print(num)

        if num == 0:

            numcat[num] += 1

            print("You now have " + numcat[num] + "brown cats")

        elif num == 1:

            numcat[num] += 1

            print("You now have " + numcat[num] + "grey cats")

        elif num == 2:

            numcat[num] += 1

            print("You now have " + numcat[num] + "white cats")

        elif num == 3:

            numcat[num] += 1

            print("You now have " + numcat[num] + "black cats")

        elif num == 4:

            numcat[num] += 1

            print("You now have " + numcat[num] + "orange cats")

        elif num == 5:

            numcat[num] += 1

            print("You now have " + numcat[num] + "furless cats")

        elif num == 6:

            numcat[num] += 1

            print("You now have " + numcat[num] + "hairy cats")

        elif num == 7:

            numcat[num] += 1

            print("You now have " + numcat[num] + "small cats")

        elif num == 8:

            numcat[num] += 1

            print("You now have " + numcat[num] + "fat cats")

        elif num == 9:

            numcat[num] += 1

            print("You now have " + numcat[num] + "chubby cats")

        elif num == 10:

            numcat[num] += 1

            print("You now have " + numcat[num] + "magic cats")

        print(num)

    elif input() == "inventory1":

唯一有效的命令是“hello”命令,但“cat”和两个清单命令都不起作用。当我尝试使用它们时,我没有得到任何输出。有人可以解释为什么吗?


它也不会打印任何东西。我在库存代码中添加了打印命令,但它们不会打印。我的清单有什么问题吗?


我真的很想让这个程序运行,但我完全迷失在这里。


婷婷同学_
浏览 161回答 2
2回答

哔哔one

您将在每次elif评估中阅读新输入。将输入存储一次,以便您可以重复比较它:i = input()if i == "hello":    print("Hello, " + username + "!")elif i == "cat":    # ...elif i == ...:    # ...

UYOU

每次调用input()都需要用户的另一个输入。您应该调用input()一次并将返回值存储在变量中以进行比较:while True:    command = input()    if command == "hello":        print("Hello, " + username + "!")    elif command == "cat":        num = randrange(0,10)        print(num)        ...
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python