Привет. Я веду авторский канал @pythonetc с советами про Python в частности и про программирование в целом. С этого месяца мы запускаем серию подборок с лучшими постами за месяц в переводе на русский.
Подборка @pythonetc, июль 2018
4 мин
8.5K
Подборка @pythonetc, август 2018
5 мин
10K
Это третья подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки:
Подборка @pythonetc, сентябрь 2018
4 мин
9.8KЭто четвёртая подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки:
Подборка @pythonetc, октябрь 2018
3 мин
7.9K
Это пятая подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки:
Подборка @pythonetc, ноябрь 2018
3 мин
7.2K
Это шестая подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки:
Подборка @pythonetc, декабрь 2018
2 мин
6.5K
Это седьмая подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки:
Подборка @pythonetc, январь 2019
3 мин
8.4K
Это восьмая подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки:
Подборка @pythonetc, февраль 2019
6 мин
7K
Это девятая подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки.
Сравнение структур
Иногда при тестировании бывает нужно сравнить сложные структуры, игнорируя некоторые значения. Обычно это можно сделать, сравнивая конкретные значения из такой структуры:
Подборка @pythonetc, март 2019
3 мин
6.7K
Это десятая подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки.
0_0
0_0
— полностью корректное выражение на Python.Подборка @pythonetc, апрель 2019
4 мин
6.8K
Это десятая подборка советов про Python и программирование из моего авторского канала @pythonetc.
Предыдущие подборки.
Подборка @pythonetc, май 2019
5 мин
7K
Это одиннадцатая подборка советов про Python и программирование из моего авторского канала @pythonetc.
← Предыдущие подборки
Подборка @pythonetc, июнь 2019
3 мин
5.7K
Это одиннадцатая подборка советов про Python и программирование из моего авторского канала @pythonetc.
← Предыдущие подборки

Символ
\
в обычной строке имеет особое значение. \t
— это символ табуляции, \r
— разрыв строки, и так далее.Чтобы отключить такое поведение, вы можете использовать raw-строки. Тогда
r'\t'
превратится всего лишь в обратный слэш и t
.Очевидно, что нельзя использовать
'
внутри r'...'
. И хотя это ограничение можно обойти с помощью \
, однако в строке \
всё равно останется:Подборка @pythonetc, июль 2019
4 мин
7.5K
Это двенадцатая подборка советов про Python и программирование из моего авторского канала @pythonetc.
← Предыдущие подборки

Нельзя изменять переменные замыканий с помощью простого присваивания. Python расценивает присваивание как определение внутри тела функции и вообще не делает замыкание.
Подборка @pythonetc, август 2019
4 мин
7.3K
Новая подборка советов про Python и программирование из моего авторского канала @pythonetc.
← Предыдущие подборки

Если у экземпляра класса нет атрибута с заданным именем, то он пытается обратиться к атрибуту класса с тем же именем.
>>> class A:
... x = 2
...
>>> A.x
2
>>> A().x
2
Подборка @pythonetc, сентябрь 2019
3 мин
5.3K
Новая подборка советов про Python и программирование из моего авторского канала @pythonetc.
← Предыдущие подборки
Подборка @pythonetc, октябрь 2019
3 мин
7.1K
Новая подборка советов про Python и программирование из моего авторского канала @pythonetc.
← Предыдущие подборки

Если хотите итерировать сразу несколько итерируемых объектов, то можете использовать функцию
zip
(не имеет никакого отношения к файловому формату ZIP):Подборка @pythonetc, ноябрь 2019
3 мин
5.7K
Новая подборка советов про Python и программирование из моего авторского канала @pythonetc.
← Previous publications

PATH
— это переменная окружения, в которой хранятся пути, по которым ищутся исполняемые файлы. Когда вы просите оболочку выполнить ls
, она сначала ищет исполняемый файл ls
по всем путям, указанным в PATH
.Подборка @pythonetc, декабрь 2019
3 мин
5.5K
Новая подборка советов про Python и программирование из моего авторского канала @pythonetc.
← Предыдущие публикации

Очевидно, что разные
asyncio
-задачи используют разные стеки. Можно в любой момент просмотреть их все, получив с помощью asyncio.all_tasks()
все выполняемые сейчас задачи, а с помощью task.get_stack()
получив стеки для всех задач.Подборка @pythonetc, январь 2020
3 мин
7.7K
Новая подборка советов про Python и программирование из моего авторского канала @pythonetc.
← Предыдущие публикации

Порядок блоков
except
имеет значение: если исключение может быть поймано несколькими блоками, то его поймает верхний блок. Этот код не будет работать так, как задумано: