【发布时间】:2016-01-03 12:30:24
【问题描述】:
如果提供了无效条目,则此代码(日期)的返回值为“无”,则给出有效条目。但是,如果第一次给出有效条目,则会给出正确的日期返回。关于如何解决它的任何提示?
def getDate():
date = input("Please enter the date in DD/MM/YYYY format: ")
try:
strptime(date, "%d/%m/%Y")
return date
except:
print ("Invalid Date, please enter again")
getDate()
【问题讨论】:
-
1.在
except案例中,您不会返回任何内容。 2.Don't use bareexcept。 3. 不要为此使用递归 - 请参阅 stackoverflow.com/q/23294658/3001761 -
您可以通过将
except子句中的最后一行更改为return getDate()来使其工作。但是,正如 jonrsharpe 指出的那样,您不应该使用递归来执行重试;改用循环。 -
关闭这个问题的原因似乎完全错误。它可以被复制并且它(可能)不是一个错字。
标签: python function validation date try-except