Перенос строк кода Python

PEP-8 не рекомендует писать строки кода длиннее, чем 79 символов. С этим можно не согласиться, однако, встречаются строки, которые не влезают даже на наши широкоформатные мониторы. 👨‍🎓 Старайтесь не делать очень длинные строки, разбивая сложные условия или формулы на отдельные части, вынося их в переменные или функции с осмысленными названиями. Если есть острая необходимость иметь…

Отрезок времени в Python – timedelta

В модуле datatime содержатся классы для работы с датой и временем. В частности часто используются datetime для хранения даты и времени некоторого события и timedelta для хранения интервала времени между каким-то двумя событиями. Удобно работать с datetime и timedelta путем математических операций.  📎 Примеры. Добавить к дате один день, год или отнять 2:20 (функция str…

Деление с остатком преподнесло сюрприз

Деление с остатком – часто используемая операция в программировании. Начиная от классических заданий для начинающих на вычисление минут и секунд: Заканчивая тем, что на остатках построена львиная доля криптографии. Нахождения остатка часто называют modulo (или коротко mod).  При делении a на b неполное частное q и остаток r связаны формулой: a = b · q…

Умножение списка на число

Студент Макс узнал, что в Python умножать можно не только числа, но и другие объекты, например, строку на число: «Вау!» — подумал Макс — «А что если умножить список на число?»: Значит можно создать двумерный массив очень кратко и элегантно? Заполнить его: Макс ожидал получить: А вышло: 😯 Как же так?! Дело в том, что…

Подчеркивание в Python

Знак подчеркивания _ или underscore занимает особое место в Python. Подчеркивание имеет множество применений, как эстетических конвенций (необязательная договоренность разработчиков оформлять код с подчеркиваниями), так и функциональных, т. е. реально затрагивающих исполнение кода (такие места буду отмечать знаком ⚠️). змеиный_регистр (snake_case) имена магических методов и переменных «приватные» члены класса и коверкание имен (mangling) игнорирование значения…