python条件导致错误结果

时间:2015-09-11 17:21:57

标签: python while-loop

我是python中的新手,我对while循环有疑问。

有人可以解释一下我的代码究竟发生了什么,以及为什么它会给我一个不正确的结果。

这是我的代码:

age=20

while age >= 10:
    age=int(input("what is your age?")) 
    print("your age is >= 10")

并且回应是:

  what is your age? 9
  "your age is >= 10"

我不明白这一点。我正在使用windows7& python3

2 个答案:

答案 0 :(得分:0)

问题是您在询问年龄后打印“您的年龄> = 10”,但实际上并未检查他们先输入的年龄。如果年龄不是> = 10,则应在打印周围使用条件语句以防止打印。

age=20

while age >= 10:
    age=int(input("what is your age?"))
    if age >= 10: 
        print("your age is >= 10")

答案 1 :(得分:0)

您是否尝试过运行此代码?这将有助于澄清。

输入是一个函数,它接受字符串"what is your age?",提示用户,并返回用户在命令行中输入的答案。函数int()然后将用户的答案从字符串转换为整数。之后,将此整数分配给变量年龄age=,然后打印一条消息"your age is >= 10"

每次循环运行时,程序会询问用户的年龄,并将其分配给变量年龄。然后while循环检查条件:年龄等于或大于10? age >= 10。如果不是,它会不断循环。如果用户输入的年龄小于10,它将仅退出循环。

希望它有所帮助。