Menu
Coddy logo textTech

try-except

Lekcja 3 z 16 w kursie Obsługa wyjątków w Pythonie w Coddy.

Blok try-except w Python służy do przechwytywania i obsługi wyjątków. Poniżej znajduje się podstawowa struktura bloku try-except.

try:
    statement 1
    statements which can cause error
    statement 3
except [ExceptionName]:
    code for exception handling 
  • Python wykonuje kod z bloku try.
  • Jeśli napotka wyjątek, wykonanie kodu przejdzie do bloku except. Pozostałe wiersze bloku try nie zostaną wykonane (w tym przypadku statement 3).
  • Jeśli nie wystąpi żaden wyjątek, blok try zostanie wykonany w całości, a blok except zostanie pominięty.

blok try:

  • Blok zawierający kod, w którym może wystąpić wyjątek.

blok except:

  • Blok, w którym podejmujesz niezbędne działania, jeśli wystąpi wyjątek.

Przykład:

try:
   a = int(input())
   b = int(input())
   div = a/b
   print("Division is:",div)
except ZeroDivisionError:
   print("Cannot divide by zero")
   
print("Rest of code")

Ten program będzie działać poprawnie, jeśli użytkownik poda niezerową wartość b. 

Jeśli użytkownik poda 0 jako b, 'a/b' spowoduje wystąpienie ZeroDivisionError, a sterowanie przejdzie do bloku except.

Wypisze on na konsoli komunikat „Nie można dzielić przez zero”, a pozostała część kodu zostanie wykonana. Dzięki użyciu try-except uniknęliśmy tutaj zakończenia programu.

challenge icon

Wyzwanie

Łatwy

Powyższy program spowoduje 'ValueError', jeśli użytkownik wprowadzi wartość nienumeryczną w którymkolwiek polu wejściowym.

Napisz program, który obsłuży ten wyjątek i wypisze na konsoli komunikat 'Not a Number'.

Spróbuj swoich sił

a = int(input())
b = int(input())
div = a/b
print("Division is:",div)
#Obsłuż tutaj wyjątek

Wszystkie lekcje w sekcji Obsługa wyjątków w Pythonie

Poćwicz samodzielnie: Kompilator Python online