Python'daki herhangi bir olası deneme bloğu için, finally
bloğun her zaman yürütüleceği garanti ediliyor mu?
Örneğin, bir bloktayken döndüğümü except
varsayalım:
try:
1/0
except ZeroDivisionError:
return
finally:
print("Does this code run?")
Ya da belki bir Exception
:
try:
1/0
except ZeroDivisionError:
raise
finally:
print("What about this code?")
Test, finally
yukarıdaki örnekler için bunun yürütüldüğünü gösteriyor , ancak aklıma gelmeyen başka senaryolar olduğunu düşünüyorum.
finally
Python'da bir bloğun çalıştırılamayacağı herhangi bir senaryo var mı?
finally
. Ya da bilgisayar daha önce çökerse aynı şey: D
finally
güç kablosu duvardan koparsa çalışmaz.
finally
, sonsuz bir döngüsys.exit
veya zorunlu bir kesinti sırasında gerçekleştirilemiyor veya "amacını bozuyor". Dokümantasyon devletlerfinally
her zaman çalıştırılır, bu yüzden bu konuda giderdim.