SORU
7 Ocak 2010, PERŞEMBE


Python nasıl eğer bir değişken Yok, Doğru veya Yanlış olduğunu test edeyim

Üç şeyden birini döndüren bir işlevi var:

  • başarı (True)
  • başarısızlık (False)
  • ayrıştırma akışı (None)/okuma hatası

Benim sorum ise True False, sonucun ne olduğunu görmek gerekir karşı test edeceksem değil. Şu anda nasıl yaptığımı aşağıda:

result = simulate(open("myfile"))
if result == None:
    print "error parsing stream"
elif result == True: # shouldn't do this
    print "result pass"
else:
    print "result fail"

gerçekten == True çıkarma gibi basit parça veya tri-bool veri türü. bir ekleme yapayım mı simulate dış programı bir hata ile yapmak istediğim Kaydet ve devam et gibi bir özel durum için bu işlevi istemiyorum.

CEVAP
7 Ocak 2010, PERŞEMBE


Korku İstisna yok! Program sadece günlük ve devam etmesi kadar kolaydır:

try:
    result = simulate(open("myfile"))
except SimulationException:
    print "error parsing stream"
else:
    if result:
        print "result pass"
    else:
        print "result fail"

# execution continues from here, regardless of exception or not

Ve şimdi hata-hata bilgilendirici yeterli bulmadınız diye tam olarak neyin yanlış gittiğini için yöntem olarak taklit bildirim çok daha zengin bir tür olabilir.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Brendan van Son

    Brendan van

    5 Aralık 2006
  • expertvillage

    expertvillag

    5 NİSAN 2006
  • GWTLecturer

    GWTLecturer

    18 EKİM 2012