これに似たdjangoコードがいくつかあります(これはpython 2.7.1です)
try:
a = some_model.objects.get(some_field='foo') #this could except if for some reason it doesn't exist
method_that_throws_exception() #it won't reach this if we get a DoesNotExist
except some_model.DoesNotExist:
#if it doesn't exist create it then try again
a = some_model.objects.create(....)
try:
method_that_throws_exception() #this time lets say another exception is raised by method
print 'this should not print right?'
except Exception as e:
logging.error("error msg here")
問題は、「これは印刷しないでください」という行がまだ印刷されていることです。私はこれに混乱しています。私はおそらく非常に単純なことを見落としているように感じますが、現時点ではいくつかのトンネルビジョンを持っている可能性があります. 前もって感謝します。
更新: また、ネストされた try ブロックを削除しても、例外をスローするメソッドの呼び出しの下に印刷が表示されます。