Зарегистрируйтесь, чтобы продолжить обучение

Комбинирование операций и функций Основы Python

Логические операции — это выражения, значит, их можно комбинировать с другими выражениями. Например, мы хотим проверить четность числа — кратность двум. В программировании используют такой подход: проверяют остаток от деления на два:

  • если остаток 0 — число четное
  • если остаток не 0 — число нечетное

Остаток от деления — простая, но важная концепция в арифметике, алгебре, в теории чисел и криптографии. Нужно разделить число на несколько равных групп, и если в конце что-то останется — это остаток от деления.

Делим конфеты поровну между людьми:

  • 7 конфет, 2 человека: 2 x 3 + остаток 1 — 7 не кратно 2
  • 21 конфету, 3 человека: 3 x 7 + остаток 0 — 21 кратно 3
  • 19 конфет, 5 человек: 5 x 3 + остаток 4 — 19 не кратно 5

Оператор % вычисляет остаток от деления:

  • 7 % 21
  • 21 % 30
  • 19 % 54

Скомбинируем в одном выражении логический оператор «проверка равенства» == и арифметический оператор % и напишем функцию проверки четности:

def is_even(number: int) -> bool:
    return number % 2 == 0

print(is_even(10))  # => True
print(is_even(3))   # => False

Приоритет арифметических операций выше логических. Значит, сначала вычисляется арифметическое выражение number % 2, а затем результат сравнивается с нулем и возвращается результат проверки равенства.

Теперь напишем функцию, которая принимает строку и проверяет, начинается ли эта строка с латинской буквы a.

Алгоритм:

  1. Получим и запишем в переменную первый символ из строки-аргумента
  2. Сравним, равен ли символ латинской букве a
  3. Вернем результат
def is_first_letter_an_a(text: string) -> bool:
    first_letter = text[0]
    return first_letter == 'a'

print(is_first_letter_an_a('orange'))  # => False
print(is_first_letter_an_a('apple'))   # => True

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

Теперь вы знаете, что операции сравнения применяются в программировании наравне с арифметическими. Но помните, что равенство обозначается ==. Так вы не спутаете эту операцию с присваиванием значения переменной.

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff