SORU
24 HAZİRAN 2011, Cuma


Yakalamak birden fazla satır istisnalar (blok hariç)

Yapabileceğimi biliyorum:

try:
    # do something that may fail
except:
    # do this if ANYTHING goes wrong

Ayrıca bunu yapabilirim:

try:
    # do something that may fail
except IDontLikeYourFaceException:
    # put on makeup or smile
except YouAreTooShortException:
    # stand on a ladder

Ama eğer iki farklı durumlar içinde aynı şeyi yapmak istiyorum, şu an aklıma gelen en iyi bunu yapmak için

try:
    # do something that may fail
except IDontLIkeYouException:
    # say please
except YouAreBeingMeanException:
    # say please

Bu iki özel durumlar için eylem 9 ** olduğundan () gibi bir şey yapabileceğim herhangi bir şekilde:

try:
    # do something that may fail
except IDontLIkeYouException, YouAreBeingMeanException:
    # say please

Şimdi bu gerçekten sözdizimi uyuyor gibi işe yaramaz:

try:
    # do something that may fail
except Exception, e:
    # say please

Yani, iki ayrı özel durumları yakalamak için çaba pek gelmiyor.

Bunu yapmanın bir yolu var mı?

CEVAP
24 HAZİRAN 2011, Cuma


Köşeli parantez:

except (IDontLIkeYouException, YouAreBeingMeanException) as e:
    pass

Virgül ile değişken durum ayıran hala Python 2.6 ve 2.7, ama artık önerilmiyor ve 3; as kullanmanız gerektiğini, şimdi Python çalışmıyor.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • B4ROK

    B4ROK

    1 EKİM 2008
  • BASS212M

    BASS212M

    15 Temmuz 2009
  • Jonah Penna

    Jonah Penna

    11 EYLÜL 2005