Hatalar, programın kurtarmaması gereken programdaki sorunlardır. Programın herhangi bir noktasında bir hata oluşursa, program sorunsuz bir şekilde çıkmalıdır. Öte yandan, programın normal akışını bir şekilde değiştiren harici bir olay meydana geldiğinde istisnalar ortaya çıkar.

Bu eğitimde Python'daki yaygın Hata ve İstisnalar türleri ve bunların ele alınmasına ilişkin yaygın paradigmalar hakkında bilgi edineceğiz.

Try / Except / Nihayet ile İstisnaları Ele Alma

Python'daki Hatalar ve İstisnalar Try: Except: Finallyyapı ile işlenir . Güvenli olmayan kodu try:bloğa koydunuz . Geri dönüş kodunu Except:bloğa koyarsınız . Son kod Finally:blokta tutulur .

Örneğin, aşağıdaki koda bakın.

>>> try:
...     print("in the try block")
...     print(1/0)
... except:
...     print("In the except block")
... finally:
...     print("In the finally block")
...
in the try block
In the except block
In the finally block

Önceden tanımlanmış bir koşul için istisnaların artırılması

Kodun belirli parametreler dahilinde davranmasını istiyorsanız istisnalar da ortaya çıkabilir. Örneğin, kullanıcı girişini yalnızca pozitif tam sayılarla sınırlamak istiyorsanız, bir istisna oluşturun.

# exc.py
while True:
    try:
        user = int(input())
        if user < 0:
        raise ValueError("please give positive number")
        else:
        print("user input: %s" % user)
except ValueError as e:
        print(e)

Dolayısıyla yukarıdaki belirtmiş olduğumuz programın çıktısı:

  python exc.py
4
user input: 4
3
user input: 3
2
user input: 2
1
user input: 1
-1
please give positive number
5
user input: 5
2
user input: 2
-5
please give positive number
^C
Traceback (most recent call last):
File "exc.py", line 3, in <module>
  user = int(input())
KeyboardInterrupt