Dies ist ein Code, der sich besonders verhält. Dies ist eine vereinfachte Version des Verhaltens, das ich geschrieben habe. Dies wird immer noch das seltsame Verhalten demonstrieren und ich hatte einige spezifische Fragen, warum dies geschieht.
Ich verwende Python 2.6.6 unter Windows 7.
def demo1():
try:
raise RuntimeError,"To Force Issue"
except:
return 1
else:
return 2
finally:
return 3
def demo2():
try:
try:
raise RuntimeError,"To Force Issue"
except:
return 1
else:
return 2
finally:
return 3
except:
print 4
else:
print 5
finally:
print 6
Ergebnisse:
>>> print demo1()
3
>>> print demo2()
6
3
- Warum gibt Demo 1 3 statt 1 zurück?
- Warum druckt Demo 2 6 statt 6 mit 4 oder 5?