【发布时间】:2010-04-30 13:32:19
【问题描述】:
我有一个基本的“最佳实践”Python 问题。我看到已经有 StackOverflow 答案与这个问题切线相关,但它们陷入了复杂的示例或涉及多个因素。
鉴于此代码:
#!/usr/bin/python
def test_function():
try:
a = str(5)
raise
b = str(6)
except:
print b
test_function()
避免我将在异常处理程序中遇到的不可避免的“UnboundLocalError: local variable 'b' referenced before assignment”的最佳方法是什么?
python 有没有优雅的方法来处理这个问题?如果不是,那不优雅的方式呢?在一个复杂的函数中,我宁愿避免在打印关于它们的调试信息之前测试每个局部变量的存在。
【问题讨论】:
-
处理什么?
except子句中应该打印什么?
标签: python exception-handling scope