所以我只是想用python写一些东西,我需要让这个代码循环,直到指定了“Yes”或“Yes”,但是当没有指定“Yes”或“Yes”时,它会保持收支平衡。请帮我修一下,谢谢。你知道吗
print("Please now take the time to fill in your DOB:")
DOB_day = raw_input ("Date of month:")
DOB_month = raw_input ("Month:")
DOB_year = raw_input ("Year:")
DOB_confirmation = raw_input ("Please confirm, is this correct?")
while DOB_confirmation != "No" or "no":
DOB_day = raw_input ("Date of month:")
DOB_month = raw_input ("Month:")
DOB_year = raw_input ("Year:")
DOB_confirmation = raw_input ("Please confirm, is this correct?")
if DOB_confirmation == "Yes" or "yes":
break
试着这样运行你的代码
我喜欢做这种类型的循环,它可以替代java中的do。你知道吗
.lower()
将字符串转换为小写。因此,如果用户键入“YES”或“YES”等。。它将读取字符串作为“yes”。你知道吗还可以使用
.upper()
将字符串转换为大写。希望这有帮助。你知道吗raw_input
没有在我的Python版本(3.7.0)中定义,所以我用常规的input
替换了它。此外,一旦我将所有内容缩进,它似乎工作正常,除了接受“是”。你知道吗代码:
输出:
看看你的
while DOB_confirmation != "No" or "no":
行。你想说“当确认答案不是肯定的时候,继续问生日”。。。但那不是你写的。您还错误地使用了or
。你知道吗试试这个:
while DOB_confirmation.lower() != "yes":
。这实际上是说“虽然用户没有输入任何形式的‘是’”,这就是你要找的。你知道吗您可以消除末尾的
if
语句—它被while
循环所覆盖。你知道吗试试这个:
相关问题 更多 >
编程相关推荐