Предикаты

Вспомним функцию is_infant из прошлого урока:

def is_infant(age):
    return age < 1

print(is_infant(3))
False

is_infant — это функция-предикат.

Предикат отвечает на утвердительный вопрос «да» или «нет», возвращая значение типа bool.

Предикаты во всех языках принято именовать особым образом для простоты анализа. В Python предикаты, как правило, начинаются с префикса is или has:

  • is_infant — «младенец ли?»
  • has_children — «есть ли дети?»
  • is_empty — «пустой ли?»
  • has_errors — «есть ли ошибки?»

Функция может считаться предикатом, только если она возвращает bool.


Давайте напишем еще одну функцию-предикат. Она принимает строку и проверяет, является ли она словом 'Castle':

def is_castle(string):
    return string == 'Castle'

print(is_castle('Sea'))
False

Задание

Напишите функцию is_mister, которая принимает строку и проверяет, является ли она словом 'Mister'.


Советы
Определения
  • Предикат — выражение, отвечающее на вопрос «да» или «нет» с помощью типа bool.


Нашли ошибку? Есть что добавить? Пулреквесты приветствуютсяhttps://github.com/hexlet-basics

Упражнение доступно только авторизованным пользователям.

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