【发布时间】:2013-09-16 20:55:38
【问题描述】:
def connect(self):
ok = False
try:
conn = ftplib.FTP(self.hostname, self.user, self.password)
ok = True
return conn
finally:
if not ok:
logging.error('Failed to connect to %s for %s' % (self.hostname, self.user))
我假设如果 finally 块中发生了某些事情,则在 try 块中返回不是一个好主意。我只是想在敲别人的头之前确定执行顺序!
【问题讨论】:
-
在
finally块(而不是except块)中处理异常 有点奇怪。 -
有什么问题?目前尚不清楚您实际上想学习什么。
-
@raina77ow:同意。我能想象到这样做的唯一原因是如果我需要自定义异常链接(在 Python 3.2+ 中)。
标签: python try-finally