Арифметика в python
Приоритет операций
- Cтепень
- Деление / умножение
- Сложение / вычитание
Нюансы при возведении в степень
2 ** 3 ** 4 = ?
Сначала выполнится последнее возведение в степень, а уже потом первое. То есть:
3 ** 4 = 81
2 ** 81 = <Много>
Деление нацело и с остатком
Целочисленное деление
/
- деление с плавающей точкой
//
- целочисленное деление
%
- вычисление остатка от деления
Подсчет кол-ва цифр в числе
C помощью % 10
можно получить последнюю цифру числа, а с помощью // 10
отбрасывать ее. Так и можно посчитать кол-во цифр в числе.
Получение частного и остатка одновременно
divmod() - функция, которая, in this case, приняла int числа 9 и 5, а вернула кортеж из двух элементов.
Сокращенные операторы
Выражение | Комбинированный оператор присваивания | Сокращённое выражение |
---|---|---|
a = a + 2 | += | a += 2 |
b = b - 34 | -= | b -= 34 |
c = c * 7 | *= | c *= 7 |
d = d / 3 | /= | d /= 3 |
e = e // 10 | //= | e //= 10 |
f = f % 4 | %= | f %= 4 |
g = g \*\* 4 | **= | g **= 4 |
Сокращённые операторы нельзя использовать с undefined (не заданными) переменными. Нельзя написать num += 2, если переменной num ещё нет, ведь питон не шарит, к чему добавлять +2.
divide by zero (0)
Соус: Книга “Простой Python” ⇒ Глава 2. “Числа”