Уроки модуля (2/4)
Операторы
Операторы – это символы, которые объединяют значения для создания новых. Python использует большинство операторов совместно с другими языками, но вводит некоторые очень полезные сами по себе.
Арифметические операторы
3 + 2 # 5 somma
3 - 2 # 1 differenza
3 * 2 # 6 prodotto
7 / 2 # 3.5 divisione (restituisce SEMPRE float)
7 // 2 # 3 divisione intera (tronca verso il basso)
7 % 2 # 1 resto (modulo)
2 ** 10 # 1024 potenzaОператоры сравнения
Они возвращают bool (True или False):
3 == 3 # True uguaglianza
3 != 4 # True diversità
3 < 4 # True minore
3 <= 3 # True minore o uguale
"a" < "b" # True confronto lessicograficoВ отличие от JavaScript, в Python есть только одно равенство
оператор (==): нет необходимости выбирать между == и ===.
Логические операторы
Они написаны английскими словами, а не символами:
True and False # False
True or False # True
not True # FalseУ них также есть очень полезное поведение короткого замыкания: a and b
возвращает a, если оно «ложное», в противном случае b.
Что считать «ложным»
В Python они считаются ложными: False, None, 0, 0.0, пустая строка.
"", пустой список [], пустой словарь {}. Все остальное считается правдой.
Коротко о приоритете
Для запоминания: ** → * / // % → + - → сравнения → not → and →
or. В случае сомнений используйте круглые скобки: они ничего не стоят и делают
код более читабельный.
Деление этажей и округление
Оператор деления нижнего уровня // всегда усекает результат до следующего целого числа. Это означает, что для положительных чисел 7 // 2 даёт 3, а для отрицательных чисел -7 // 2 даёт -4.
Оператор по модулю % вычисляет остаток целочисленного деления и широко используется для определения того, является ли число кратным другому (например, n % 2 == 0 проверяет, является ли n четным).
Попробуйте сами
Вычислите квадрат 9 плюс куб 2 и присвойте результат результату. Затем оцените «результат».
Показать подсказку
9**2 равно 81, 2**3 равно 8: сумма равна 89.
Решение доступно после 3 попыток
Обзор упражнения
Создайте переменную is_even, которая указывает (True/False), является ли число 17 четным, используя оператор по модулю.
Показать подсказку
Число является четным, если его остаток по модулю 2 равен 0.
Решение доступно после 3 попыток
Дополнительная задача
Use floor division to calculate how many times 3 goes into 10, calculate the remainder using modulo, and check if this remainder is not equal to 0. Store the boolean verdict in `is_not_multiple`. Finally, evaluate the variable.
Показать подсказку
Используйте 10 // 3 для деления по этажам и 10 % 3 для деления по модулю.
Решение доступно после 3 попыток