Функции с возвратом значения

Слайд 3

🔍 Возвращение булевых значений

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

💡 Булевы функции особенно полезны в конструкциях if, while и при валидации данных.

📘 Пример 1. Проверка чётности числа

Без использования функции код проверки чётности может выглядеть так:

number = int(input())
if number % 2 == 0:
    print('Это число чётное.')
else:
    print('Это число нечётное.')

Чтобы сделать код чище и понятнее, вынесем проверку в булеву функцию is_even():

def is_even(number):
    if number % 2 == 0:
        return True
    else:
        return False

Теперь основная программа становится гораздо проще:

number = int(input())
if is_even(number):
    print('Это число чётное.')
else:
    print('Это число нечётное.')
✅ Функцию is_even() можно вызывать в любом месте программы, где нужно проверить чётность числа.

📗 Пример 2. Упрощение валидации данных

Допустим, пользователю нужно ввести номер модели изделия, и возможны только значения 100, 200 или 300. Без булевой функции код будет выглядеть так:

model = int(input())

while model != 100 and model != 200 and model != 300:
    print('Допустимыми номерами моделей являются 100, 200 или 300.')
    model = int(input())

Теперь перепишем код с использованием функции is_invalid():

def is_invalid(model):
    if model != 100 and model != 200 and model != 300:
        return True
    else:
        return False

model = int(input())

while is_invalid(model):
    print('Допустимыми номерами моделей являются 100, 200 и 300.')
    model = int(input())
💡 Теперь логика цикла читается естественно: «Повторять, пока номер модели недопустим».

⚙️ Примечания

  • Булевые функции делают код понятнее и удобнее для чтения.
  • Однако слишком частое их использование для простых проверок может излишне увеличивать код и снижать производительность.
  • В некоторых случаях можно писать компактнее:
    def is_even(number):
        return number % 2 == 0
💬 Короткая запись return условие — это идиоматичный способ возврата булевого значения в Python.