微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python while循环不止一次要求输入

如何解决Python while循环不止一次要求输入

我一直在尝试通过猜数字程序来解决这个问题, 程序必须打印Ans的第一个数字为(Startlow + Starthigh)/ 2,然后更新Ans取决于输入

我不知道为什么我的while循环至少要等待2次,直到输出结果为止,即使我按l或h(除非按c),这都会中断循环。

Startlow = 0
Starthigh = 100
Ans = (Startlow + Starthigh)/2
print("Please think of a number between 0 and 100!")

while True:
    print("Is your secret number " + str(int(Ans)))
    if input() == "c":
        print("Game over,Your secret number was: "+str(int(Ans)))
        break
    elif input() == "l":
        Startlow = Ans
        Ans = (Startlow + Starthigh)/2
    elif input() == "h":
        Starthigh = Ans
        Ans = (Startlow + Starthigh)/2
    else:
        print("Sorry,I did not understand your input.")

任何帮助表示赞赏:)

解决方法

您应该在循环中要求一次输入,然后将该答案与所需项目进行比较。

您正在每个条件中都要求一个(可能不同)答案。

问的问题数量取决于您要满足的条件数量。

,

只需:

x = input()
if x == "c":
  #And so on...

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。