СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Методическая разработка «Инструкция raise в Python»

Категория: Информатика

Нажмите, чтобы узнать подробности

Просмотр содержимого документа
«Методическая разработка «Инструкция raise в Python»»

МУНИЦИПАЛЬНОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ДОПОЛНИТЕЛЬНОГО ОБРАЗОВАНИЯ

«ЦЕНТР ДЕТСКОГО ТЕХНИЧЕСКОГО ТВОРЧЕСТВА»













Методическая разработка

«Инструкция raise в Python»

к дополнительной общеобразовательной

общеразвивающей программе

технической направленности

«Программирование на Python»



Возраст детей: 10-17 лет









Автор: Костычев Вадим Александрович











г. Заречный Пензенской области

2025 г.

Данный материал предназначен для преподавателей информатики, программирования и студентов (учащихся), изучающих язык программирования Python. Он может быть использован как на лекциях, так и при проведении практических занятий или самостоятельной работе.


Цель: формирование у обучающихся навыков явного вызова исключений в Python с помощью инструкции raise. Развитие понимания необходимости генерации собственных ошибок в целях обеспечения надежности, читаемости и поддерживаемости кода.


Задачи:

  1. Познакомить обучающихся с инструкцией raise.

  2. Научить использовать raise для генерации встроенных и пользовательских исключений.

  3. Продемонстрировать практическое применение raise в проверке входных данных.

  4. Развить навыки создания самодокументируемого и безопасного кода.

  5. Подготовить обучающихся к разработке сложных приложений с четкой системой обработки ошибок.


Что такое raise?


Инструкция raise в Python используется для явного вызова (генерации) исключения. Это позволяет программисту сообщить о возникновении ошибочной ситуации даже в случае, когда она не возникла автоматически во время выполнения программы.


Синтаксис


raise ()


Примеры:


raise ValueError("Неверное значение")

raise Exception("Произошла общая ошибка")


Пример 1: Базовое использование raise


x = -5

if x

raise ValueError("Число не может быть отрицательным")


Результат:


ValueError: Число не может быть отрицательным


Пример 2: Использование raise внутри функции


def divide(a, b):

if b == 0:

raise ZeroDivisionError("Делитель не может быть равен нулю")

return a / b


try:

result = divide(10, 0)

except ZeroDivisionError as e:

print("Ошибка:", e)


Вывод:


Ошибка: Делитель не может быть равен нулю


Пример 3: Вызов пользовательского исключения


Создадим собственный класс исключения:


class NegativeNumberError(Exception):

pass


def check_number(x):

if x

raise NegativeNumberError("Отрицательные числа запрещены")


try:

check_number(-10)

except NegativeNumberError as e:

print("Ошибка:", e)


Вывод:


Ошибка: Отрицательные числа запрещены


Задание 1: Проверка ввода пользователя


Напишите функцию, которая принимает возраст и вызывает исключение, если возраст меньше 0 или больше 150.


def validate_age(age):

if age

raise ValueError("Возраст не может быть отрицательным")

if age 150:

raise ValueError("Возраст слишком велик")


try:

user_age = int(input("Введите ваш возраст: "))

validate_age(user_age)

print("Возраст принят")

except ValueError as e:

print("Ошибка ввода:", e)


Задание 2: Генерация пользовательского исключения


Создайте класс InvalidEmailError, который наследуется от Exception. Напишите функцию, которая проверяет формат email и вызывает это исключение при некорректном вводе.


class InvalidEmailError(Exception):

def __init__(self, email):

self.email = email

super().__init__(f"Некорректный адрес электронной почты: {email}")


def validate_email(email):

if "@" not in email or "." not in email:

raise InvalidEmailError(email)


try:

validate_email("invalid-email")

except InvalidEmailError as e:

print(e)


Упражнения для самостоятельного выполнения


  1. Напишите функцию, которая принимает пароль и вызывает исключение, если длина пароля меньше 6 символов.

  2. Создайте функцию проверки имени, которая вызывает исключение, если имя пустое или содержит цифры.

  3. Реализуйте систему валидации номера телефона с использованием пользовательского исключения.


Контрольные вопросы

  1. Что делает инструкция raise?

  2. Какие типы исключений можно вызывать с помощью raise?

  3. Почему важно создавать пользовательские исключения?

  4. Можно ли вызвать исключение без указания типа?

  5. Как влияет raise на структуру программы и обработку ошибок?