DamiRocK

Python: логическое значение и проверка возраста по учебному порогу

Возвращаем bool из сравнения age>=60. Разбираем True и False, граничные значения и различие между = и == без привязки к реальному пенсионному праву.

Ответ «да» или «нет»

Операции сравнения возвращают логическое значение: True или False. Например, 5 > 3 равно True, 5 == 3 — False. Тип такого результата — bool; названия значений пишутся с заглавной первой буквы.

Задание источника

Функция is_pensioner должна вернуть True при возрасте 60 или больше. Это фиксированное правило учебного задания, не описание действующего пенсионного законодательства.

def is_pensioner(age: int) -> bool:
    return age >= 60

Проверка границы

print(is_pensioner(59))  # False
print(is_pensioner(60))  # True
print(is_pensioner(61))  # True

Знак >= включает само значение 60. Замена на > изменила бы ответ на границе. Для подобных условий полезно проверить значение перед порогом, сам порог и значение после него.

Возвращать сравнение напрямую

Сравнение уже является логическим результатом. Не требуется дополнительное ветвление «если условие истинно, вернуть True, иначе False». Прямой return короче и сохраняет точный смысл.

Присваивание и равенство

= связывает имя со значением, а == сравнивает значения. Эти операции не взаимозаменяемы. Строки "True" и "False" также не являются логическими константами: это текст.

Функция проверяет только указанное числовое условие. Она не удостоверяет корректность возраста, не читает дату рождения и не выполняет проверку документов. Аннотация int описывает ожидаемый тип, но не запрещает все неподходящие данные автоматически.

Hexlet / Code Basics и участники · Исходный урок и решение · GNU AGPL v3. Порог сохранён исключительно как учебное правило.

Reading preferences

Appearance
Contrast
More options

Saved only in this browser. Your device’s reduced-motion setting is always respected. Browser zoom works throughout the site.