Python 3.6.5中的三重嵌套不是不确定的
我正在尝试对while循环进行三重嵌套。 若您输入一个十进制数,它将返回错误,若您输入的数字高于31,它将返回错误,但若您再次尝试输入十进制数,代码将停止。无论用户输入错误的格式多少次或顺序如何,都需要帮助使其不确定循环。还需要验证输入的日期是否对给定月份的天数有效Python 3.6.5中的三重嵌套不是不确定的,python,python-3.x,Python,Python 3.x,我正在尝试对while循环进行三重嵌套。 若您输入一个十进制数,它将返回错误,若您输入的数字高于31,它将返回错误,但若您再次尝试输入十进制数,代码将停止。无论用户输入错误的格式多少次或顺序如何,都需要帮助使其不确定循环。还需要验证输入的日期是否对给定月份的天数有效 import string varD= input("Enter Date/Day:") while varD.isdigit() or varD.isspace()\ or varD.isdecimal or int(
import string
varD= input("Enter Date/Day:")
while varD.isdigit() or varD.isspace()\
or varD.isdecimal or int(varD)>31 \
or int(varD)==26 or int(varD)<=0:
print ("Error: Enter Valid Number!")
varD= input("Enter Day:")
else:
print ("You have entered:", varD)
导入字符串
varD=输入(“输入日期/日期:”)
而varD.isdigit()或varD.isspace()\
或varD.isdecimal或int(varD)>31\
或int(varD)==26或int(varD)使用无限循环,仅当满足所有条件时才中断
while True:
varD = input("Enter Day:")
if varD.isdigit() and not varD.isspace() and varD.isdecimal() \
and int(varD) < 32 and int(varD) != 26 and int(varD) > 0:
break
print("Error: Enter Valid Number!")
print("You have entered: %s" % varD)
我会考虑把这个长的条件分解成单独的行。事实上,我也会这么做。我实际上是指几个<代码>如果语句,抱歉。我不太认为现在我写的方式比<<代码>如果语句更不可读。但我知道你是从哪里来的。是的,我刚刚意识到我必须完成上一次打印语句的代码,因为你的语句只是占位符,它可以工作。谢谢你有3个不同的连续循环。为什么不使用单个而使用True
循环呢?
while expression1:
while expression2:
while expression3:
do_something()