我试图确定哪个是日期格式,只考虑两个选项%Y-%m和%Y-%m-%d。
如果它是Y-m或Y-m-d就可以了。问题是我想在格式既不是其中之一的情况下插入错误句子,如下所示:
date='2014-01asd'
def date_format(date):
try:
datetime.datetime.strptime(date, '%Y-%m')
return 1
except ValueError:
datetime.datetime.strptime(date, '%Y-%m-%d')
return 2
except:
return 'Wrong date format you dweezle! Must be YYYY-MM or YYYY-MM-DD'
但显然不可能使用两个"例外"按顺序。 有人帮忙吗?
答案 0 :(得分:2)
您需要在此处嵌套def date_format(date):
try:
datetime.datetime.strptime(date, '%Y-%m')
return 1
except ValueError:
try:
datetime.datetime.strptime(date, '%Y-%m-%d')
return 2
except ValueError:
return 'Wrong date format you dweezle! Must be YYYY-MM or YYYY-MM-DD'
语句:
return
虽然你可以把它们串联起来,但是如果成功的话,第一个pass
就不可能了;拥有第一个异常处理程序def date_format(date):
try:
datetime.datetime.strptime(date, '%Y-%m')
return 1
except ValueError:
pass
try:
datetime.datetime.strptime(date, '%Y-%m-%d')
return 2
except ValueError:
return 'Wrong date format you dweezle! Must be YYYY-MM or YYYY-MM-DD'
:
scikit-learn