SORU
3 HAZİRAN 2009, ÇARŞAMBA


En iyi uygulama Python için Onaylama

  1. Standart kod parçası assert kullanmak yerine kullanarak performans veya kod bir bakım sorunu sadece hata ayıklama amacıyla var mı?

    assert x >= 0, 'x is less than zero'
    

    daha iyi ya da daha kötü

    if x < 0:
        raise Exception, 'x is less than zero'
    
  2. Ayrıca, hiç bir iş kuralı gibi if x < 0 raise error her zaman kontrol olmadan try/except/finally Yani, eğer zaman boyunca kod x 0'dan bir hata kaldırdı, istersen set assert x < 0 başlangıç fonksiyonu, herhangi bir yere içinde fonksiyonu x olur daha sonra 0 bir istisna mı kaldırdı?

CEVAP
3 HAZİRAN 2009, ÇARŞAMBA


İddia test için kullanılması gereken şartlarasla olmamalıydı. Amaç erken bozuk programı bir devlet durumunda çökmesine.

İstisnalar makul gelebilecek hatalar için kullanılır, ve hemen hemen her zaman kendi Özel sınıflar oluşturmanız gerekir.

< / ^ hr .

Örneğin, eğer yazılı bir işlevi okumak için bir yapılandırma dosyası içine dict, uygunsuz biçimlendirme dosyası lazım zam ConfigurationSyntaxError süre assert öyle olmadığın için dönüş None.

< / ^ hr .

Eğer x bir değeri, bir dış kaynaktan bir kullanıcı arabirimi üzerinden veya ayarlı ise sizin örnekte, bir istisna iyisidir.

Eğer x sadece aynı programda kendi koduna göre ayarlanmışsa, bu bir iddia ile gitmek.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BrandonHarrisWalker

    BrandonHarri

    27 Kasım 2006
  • Philip DeFranco

    Philip DeFra

    16 EYLÜL 2006
  • POGProductionz

    POGProductio

    27 NİSAN 2012