Ошибки и исключения в Python: в чём разница?
- Ошибки (errors) — это критические проблемы, такие как синтаксические ошибки, которые обнаруживаются до выполнения программы и не позволяют ей запуститься.
- Исключения (exceptions) — возникают во время выполнения программы при неожиданных ситуациях, например, при делении на ноль. Исключения можно перехватывать и обрабатывать в коде.
Распространённые ошибки
- SyntaxError — возникает при нарушении синтаксиса, например, при отсутствии закрывающей скобки:
print("Hello World" # Отсутствует закрывающая скобка
- IndentationError — возникает при неправильном отступе:
def greet():
print("Hello") # Отсутствует отступ
Распространённые исключения
- TypeError — операция между несовместимыми типами:
print("10" + 5) # Возникает TypeError
- ValueError — неподходящее значение аргумента:
num = int("abc") # Возникает ValueError
- KeyError — обращение к несуществующему ключу в словаре:
data = {"name": "Alice"}
print(data["age"]) # Возникает KeyError
- IndexError — обращение к несуществующему индексу в списке:
numbers = [1, 2, 3]
print(numbers[5]) # Возникает IndexError
- ZeroDivisionError — деление на ноль:
result = 10 / 0 # Возникает ZeroDivisionError
- FileNotFoundError — файл не найден:
with open("missing_file.txt", "r") as file:
content = file.read() # Возникает FileNotFoundError
Вы можете определить собственные классы исключений, наследуя от класса
Exception
:
class CustomError(Exception):
pass
raise CustomError("Это пользовательское исключение!")
#основы
>>Click here to continue<<