为什么我的 while 循环即使在正确输入后仍会问同样的问题?

问题描述 投票:0回答:1

我正在学习 Python,我对 while 循环有一些困惑。我哪里错了?

目标是确认客户端输入的参数介于男性或女性两个参数之间。如果没有,我想循环回到这个问题,直到在性别变量中输入男性或女性。

gender = input("Gender: ")

while True:
    if gender != "male" and gender != "female":
        print(input("Must choose between male and female. "))
    else:
        print("Thank You!")
        break

我期待它会问“必须在男性和女性之间选择”。并在正确输入后继续下一个问题。

目前,代码卡在显示“必须在男性和女性之间选择”。即使输入正确后。

python while-loop
1个回答
0
投票

在失败情况下,您不会重新分配

gender
的值。
print(input("Must choose between male and female. "))
应改为 `gender = input("必须在男性和女性之间选择。")

gender = input("Gender: ")

while True:
    if gender != "male" and gender != "female":
        gender = input("Must choose between male and female. ")
    else:
        print("Thank You!")
        break
© www.soinside.com 2019 - 2024. All rights reserved.