C'est un code qui se comporte de façon particulière. Ceci est une version simplifiée du comportement que j'ai écrit. Cela démontrera toujours le comportement étrange et j'avais des questions spécifiques sur la raison pour laquelle cela se produit.
J'utilise Python 2.6.6 sur 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
Résultats:
>>> print demo1()
3
>>> print demo2()
6
3
- Pourquoi la démonstration 1 renvoie-t-elle 3 au lieu de 1?
- Pourquoi la démo deux imprime-t-elle 6 au lieu d'imprimer 6 w / 4 ou 5?