我只是坐了10分钟,盯着一段简单的代码,我已经从指南中复制过了,我无法理解为什么会收到错误。
def transformation(x):
date_format = "%d/%m/%Y"
try:
a = dt.date(int(x[6:10]), int(x[3:5]), int(x[0:2]))
else:
a = dt.datetime.strptime(x, date_format)
finally:
return a
File "<ipython-input-91-f1f6fe70d542>", line 5
else:
^
SyntaxError: invalid syntax
也许这只是我......怎么了?
添加except
后:
def transformation(x):
date_format = "%d/%m/%Y"
try:
a = dt.date(int(x[6:10]), int(x[3:5]), int(x[0:2]))
except pass
else:
a = dt.datetime.strptime(x, date_format)
finally:
return a
File "<ipython-input-93-c2285c857574>", line 5
except pass
^
SyntaxError: invalid syntax
答案 0 :(得分:3)
您需要except
子句才能使用else
:
try ... except
语句有一个可选的else
子句,当时 现在,必须关注所有except
条款 [强调我的]
答案 1 :(得分:0)
我刚从python文档页面看到它,所以我只想引用它对你说的内容:
try ... except语句有一个可选的else子句,当存在时,必须遵循所有except子句。如果try子句不引发异常,则必须执行的代码很有用。例如:
window.onpopstate