Tam Sürümünü Görmek İçin : finally kullanımı
except:
print sys.exc_info()[1]
sys.exit()
finally:
conn.close()
dosya.close()
f.quit()
şeklinde bir kod yazdım fakat invalid syntax hatası alıyorum. Acaba except sonrasında finally kullanılamıyor mu diye şüphelerim hasıl oldu. finally satırından itibaren kodu açıklama satırı yaptığımda ise problemsiz olarak çalışıyor.
Olmamı hiç.
try:
# (1) baglanti kuruluyor
...
try:
yok mu?
Bu yazdıklarına göre sadece boşlukların birbirini tutmama problemi olabilir gibi görünüyor ki, onun da ayrı bir exception u var zaten.
(Ben neden olduğunu anlayamamakla beraber, tahmin bile edemiyorum)
myavuzselim
18/04/2007, 17:50
catch'in icinde sys.exit() var.
Her ne kadar finally her zaman calisir desek de, bu durumda calismiyor demek ki.
myavuzselim
18/04/2007, 18:03
Pardon, sys.exit exception firlatarak calisiyormus, yani yakalanabilir veye sys.exit()'den sonraki finally calisir.
Python 2.5'den once except ile finally bir arada olmuyormus.
Yani herhangi bir try bloğunu önce except sonrasında da finally ile sonlandıramıyoruz anlamını mı çıkartmalıyım yazdıklarınızdan?
myavuzselim
19/04/2007, 12:32
Evet, http://docs.python.org/ref/try.html 'de yazana gore 2.5'den onceki versiyonlarda try..except..finally yok.
ok, benim kullandığım sürüm 2.4.1, dolayısıyla kullanımdan vazgeçiyorum, tşk.
Forum Yazılımı : vBulletin v3.7.3, Copyright ©2000-2008, Jelsoft Enterprises Ltd.