Помилки в Python можуть бути двох типів, тобто синтаксичні помилки та винятки. Помилки - це проблеми в програмі, через які програма припиняє виконання. З іншого боку, винятки виникають, коли відбуваються деякі внутрішні події, які змінюють нормальний хід програми.
Примітка: Щоб отримати додаткові відомості, зверніться до Помилки та винятки в Python
Нижче наведено деякі поширені виняткові помилки.
- IOError: якщо файл неможливо відкрити KeyboardInterrupt: коли користувач натискає непотрібну клавішу ValueError: коли вбудована функція отримує неправильний аргумент EOFError: якщо End-Of-File потрапляє без читання даних ImportError: якщо він не може знайти модуль
Спробуйте Except у Python
Оператор Try and Except використовується для обробки цих помилок у нашому коді на Python. Блок try використовується для перевірки деякого коду на наявність помилок, тобто код у блоці try буде виконано, якщо в програмі немає помилок. У той час як код всередині блоку винятку буде виконуватися кожного разу, коли програма стикається з помилкою в попередньому блоці спроби.
Синтаксис:
try: # Some Code except: # Executed if error in the # try block>
Як працює try()?
- По-перше, спробувати виконується пропозиція, тобто код між спробувати.
- Якщо немає винятку, то тільки спробувати пункт буде виконано, крім пункт закінчений.
- Якщо трапляється будь-який виняток, спробувати речення буде пропущено і крім пункт буде виконуватися.
- Якщо трапляється будь-який виняток, але крім пункт у коді не обробляє його, він передається зовнішньому спробувати заяви. Якщо виняток залишається необробленим, виконання припиняється.
- А спробувати оператор може мати більше одного крім пункт
Код 1: Не виняток, тому спробувати пункт буде виконуватися.
Python3
що таке rom
# Python code to illustrate> # working of try()> def> divide(x, y):> > try> :> > # Floor Division : Gives only Fractional Part as Answer> > result> => x> /> /> y> > print> (> 'Yeah ! Your answer is :'> , result)> > except> ZeroDivisionError:> > print> (> 'Sorry ! You are dividing by zero '> )> # Look at parameters and note the working of Program> divide(> 3> ,> 2> )> |
>
>
Допоміжний простір: О(1)
jfx java підручник
Вихід:
Yeah ! Your answer is : 1>
Код 1: Є лише виняток крім буде виконано пункт.
Python3
# Python code to illustrate> # working of try()> def> divide(x, y):> > try> :> > # Floor Division : Gives only Fractional Part as Answer> > result> => x> /> /> y> > print> (> 'Yeah ! Your answer is :'> , result)> > except> ZeroDivisionError:> > print> (> 'Sorry ! You are dividing by zero '> )> # Look at parameters and note the working of Program> divide(> 3> ,> 0> )> |
>
>
Вихід:
Sorry ! You are dividing by zero>
Код 2: Інший спосіб написання крім оператор, показаний нижче, і таким чином він приймає лише винятки, які ви маєте перехопити, або ви можете перевірити, яка помилка виникає.
Python3
очищення кешу npm
# code> def> divide(x, y):> > try> :> > # Floor Division : Gives only Fractional Part as Answer> > result> => x> /> /> y> > print> (> 'Yeah ! Your answer is :'> , result)> > except> Exception as e:> > # By this way we can know about the type of error occurring> > print> (> 'The error is: '> ,e)> > divide(> 3> ,> 'GFG'> )> divide(> 3> ,> 0> )> |
>
>
Вихід:
The error is: unsupported operand type(s) for //: 'int' and 'str' The error is: integer division or modulo by zero>
Інакше положення
У Python ви також можете використовувати пропозицію else в блоці try-except, який має бути присутнім після всіх пропозицій, крім. Код потрапляє в блок else, лише якщо пропозиція try не викликає винятку.
Синтаксис:
try: # Some Code except: # Executed if error in the # try block else: # execute if no exception>
код:
dijkstra
Python3
# Program to depict else clause with try-except> > # Function which returns a/b> def> AbyB(a , b):> > try> :> > c> => ((a> +> b)> /> /> (a> -> b))> > except> ZeroDivisionError:> > print> (> 'a/b result in 0'> )> > else> :> > print> (c)> > # Driver program to test above function> AbyB(> 2.0> ,> 3.0> )> AbyB(> 3.0> ,> 3.0> )> |
>
>
Вихід:
-5.0 a/b result in 0>
Нарешті ключове слово в Python
Python надає ключове слово finally, яке завжди виконується після блоків try і osim. Останній блок завжди виконується після звичайного завершення блоку спроби або після завершення блоку спроби через певні винятки.
Синтаксис:
try: # Some Code except: # Executed if error in the # try block else: # execute if no exception finally: # Some code .....(always executed)>
код:
Python3
# Python program to demonstrate finally> > # No exception Exception raised in try block> try> :> > k> => 5> /> /> 0> # raises divide by zero exception.> > print> (k)> > # handles zerodivision exception> except> ZeroDivisionError:> > print> (> 'Can't divide by zero'> )> > finally> :> > # this block is always executed> > # regardless of exception generation.> > print> (> 'This is always executed'> )> |
>
>
Вихід:
алгоритм сортування злиттям
Can't divide by zero This is always executed>
Пов'язані статті:
- Вихідні запитання
- Обробка винятків у Python
- Винятки, визначені користувачем