我遇到了Python 2.7的問題,從生成器中引發的異常不可捕獲。生成器中的不可捕捉的異常
我已經失去了相當多的時間,兩次,這種行爲。
def gen_function():
raise Exception("Here.")
for i in xrange(10):
yield i
try:
gen_function()
except Exception as e:
print("Ex: %s" % (e,))
else:
print("No exception.")
輸出:
No exception.
調用發電機不** **不執行任何代碼。試試'next(gen_function())'。 – Bakuriu
[Python yield關鍵字解釋]可能的重複(http://stackoverflow.com/questions/231767/the-python-yield-keyword-explained) – Bakuriu
@Bakuriu:我覺得這只是回答一些問題而已這個特定的問題,雖然建議完整閱讀 – Claudiu