SORU
18 Temmuz 2012, ÇARŞAMBA


Neden Python "nihayet" deyimi ihtiyacımız var mı?

try...except...finally tablolar finally ihtiyacımız var neden emin değilim. Benim görüşüme göre, bu kod bloğu

try:
    run_code1()
except TypeError:
    run_code2()
other_code()

bu bir aynı finally kullanarak

try:
    run_code1()
except TypeError:
    run_code2()
finally:
    other_code()

Bir şey mi kaçırdım?

CEVAP
18 Temmuz 2012, ÇARŞAMBA


Eğer erken dönerseniz bir fark yaratıyor

try:
    run_code1()
except TypeError:
    run_code2()
    return None   # The finally block is run before the method returns
finally:
    other_code()

Bu karşılaştırma için:

try:
    run_code1()
except TypeError:
    run_code2()
    return None   

other_code()  # This doesn't get run if there's an exception.

Farklılıklar neden olabilecek diğer durumlar:

  • Eğer bir istisna dışında blok içine atılır.
  • Eğer bir istisna run_code1() ama içinde atılır TypeError bir şey değil.
  • Diğer continue break deyimleri akış kontrol deyimleri.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ash100HD

    Ash100HD

    29 EKİM 2011
  • Derek Banas

    Derek Banas

    12 AĞUSTOS 2008
  • thepoke64738

    thepoke64738

    17 HAZİRAN 2011