Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Python: lambda

Как реализовать лямбда-функцию, выполняющую деление двух чисел с безопасной обработкой деления на ноль?

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

Короткий ответ

Можно создать лямбда-функцию, которая сначала проверяет делитель на ноль, а при нуле возвращает, например, None, 0 или сообщение об ошибке. Лямбда не поддерживает многострочные конструкции, поэтому условие пишется в одной строке. Такой приём позволяет безопасно избегать исключения ZeroDivisionError.

Длинный ответ

1. Безопасное деление в лямбда-функции

Определение:
Лямбда-функция — это короткая анонимная функция, определяемая через выражение lambda args: expression.

Реализация безопасного деления требует проверки делителя.

1.1. Пример безопасного деления

Python

safe_div = lambda a, b: a / b if b != 0 else None

Использование:

Python

print(safe_div(10, 2))  # 5.0
print(safe_div(10, 0))  # None

1.2. Другие варианты поведения

Можно возвращать:

  1. число 0 при делении на ноль:

lambda a, b: a / b if b else 0
  1. строку:

lambda a, b: a / b if b else "division by zero"
  1. исключение (редко в лямбдах):

lambda a, b: a / b if b else (_ for _ in ()).throw(ZeroDivisionError())

1.3. Где это применяется

  • обработка пользовательского ввода;

  • вычисления, где ошибка недопустима;

  • однострочные функции для map, filter, генераторов.

1.4. Преимущества подхода

  • компактность кода;

  • отсутствие падений программы;

  • предсказуемое поведение при b = 0.

Краткий вывод

Лямбда-функция с проверкой делителя даёт простой способ выполнить безопасное деление и избежать исключений при работе с динамическими данными.

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    4

  • Сложность:

    4

Навыки

  • Python

    Python

Ключевые слова

#lambda

Подпишись на Python Developer в телеграм

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.