Чтобы заполнить пустоту на канале, напишу анонсы на предыдущие статьи.
Виртуальные окружения в Python
Это очень важная тема, но для начинающих разработчиков её довольно сложно принять и осознать, а порой проще вообще игнорировать (так было со мной, например). А со стороны более опытного разработчика её сложно объяснять. Много нюансов. Поэтому решил пилотную статью в блог написать именно об этом.
Пишите комментарии, они классные (с авторизацией через GitHub)!
Виртуальные окружения в Python
Это очень важная тема, но для начинающих разработчиков её довольно сложно принять и осознать, а порой проще вообще игнорировать (так было со мной, например). А со стороны более опытного разработчика её сложно объяснять. Много нюансов. Поэтому решил пилотную статью в блог написать именно об этом.
Пишите комментарии, они классные (с авторизацией через GitHub)!
Питонические атаки
Виртуальные окружения в Python
Почему всегда нужно использовать виртуальные окружения и как правильно их готовить.
Ещё один пост был про
requirements.txt — что это и зачем?
Это такие текстовые файлики, в которых перечислены имена пакетов из PyPI. Их можно встретить во множестве проектов, написанных на Python. На самом деле, это очень простой способ перечислить зависимости вашего проекта, но у него есть и недостатки.
Подробности в посте.
requirements.txt
.requirements.txt — что это и зачем?
Это такие текстовые файлики, в которых перечислены имена пакетов из PyPI. Их можно встретить во множестве проектов, написанных на Python. На самом деле, это очень простой способ перечислить зависимости вашего проекта, но у него есть и недостатки.
Подробности в посте.
Питонические атаки
requirements.txt — что это и зачем?
Расскажу, как создавать и как пользоваться этим файлом для хранения дерева зависимостей проекта.
Написал про
pipenv — как pip, только удобнее
pipenv
— хороший инструмент, который во многих аспектах заменяет pip
и значительно упрощает управление зависимостями проекта и вообще воркфлоу разработки. Пользуюсь pipenv
уже пару лет, и в целом всем доволен.pipenv — как pip, только удобнее
Питонические атаки
pipenv — как pip, только удобнее
Как пользоваться и в каких случаях стоит обратить внимание на этот инструмент.
А как вы управляете зависимостями в своих проектах?
Anonymous Poll
59%
только pip, только хардкор
18%
pipenv
24%
poetry
0%
pip-tools
6%
pyflow
0%
hatch
12%
другое
pyenv
— это отличный инструмент для установки любых версий любого интерпретатора Python. Можно установить как древний CPython 2.1.3 (вышел 18 лет назад 😱), так и ультрасовременный 3.9.0, который выйдет только через полгода. А ещё pyenv
умеет устанавливать альтернативные интерпретаторы Python. И умеет удобно переключаться между версиями. Классная вещь.Установка нескольких версий Python параллельно при помощи pyenv
Питонические атаки
Установка нескольких версий Python параллельно при помощи pyenv
Простое управление версиями интерпретатора.
Раз уж я начал писать про менеджеры версий, то нельзя обойти стороной универсальный менеджер версий —
На самом деле, именно
Управление версиями чего угодно при помощи asdf
asdf
. Этот инструмент будет полезен не только для питонистов, но и в целом для людей, которые сталкиваются с задачей управления версиями своего любимого языка программирования. Может быть вы пишете на Node.js, Rust, Kotlin или Go? А может быть на всём этом сразу? asdf
умеет управлять версиями всех этих языков и ещё кучей всего!На самом деле, именно
asdf
я и пользуюсь в своей повседневной работе вместо pyenv
. Сейчас через него я управляю только версиями Python и Node.js, но если мне захочется освоить другой язык, то я уже знаю, как я буду его устанавливать 😊Управление версиями чего угодно при помощи asdf
Питонические атаки
Управление версиями чего угодно при помощи asdf
Простое управление версиями кучи языков программирования и инструментов: Python, Node.js, Ruby, Rust и т.д.
Линтер — это прям незаменимый инструмент, когда программируешь на Python. Даже не могу представить, сколько ошибок линтеры помогли мне отловить, сколько сеансов мучительного дебага я избежал, сколько часов на код-ревью сэкономлено.
Постарался в статье подробно рассмотреть как пользоваться двумя самыми популярными линтерами для Python —
Линтеры в Python
Постарался в статье подробно рассмотреть как пользоваться двумя самыми популярными линтерами для Python —
flake8
и pylint
.Линтеры в Python
Питонические атаки
Линтеры в Python
Обзор популярных статических анализаторов для Python-кода и как они экономят разработчику один день жизни в месяц.
Тема немного оффтопик, но я в восторге от
https://semakin.dev/2020/05/chocolatey/
choco
— пакетного менеджера для Windows! Больше никогда не буду устанавливать программы через "поставить галочку под лицензией", "далее", "далее", "далее", "готово".https://semakin.dev/2020/05/chocolatey/
Питонические атаки
Chocolatey — пакетный менеджер для Windows
Самая важная программа для любителей окошек.
Написал про забавный трюк, который в простых случаях позволяет использовать
https://semakin.dev/2020/05/python2_print/
print
как функцию в Python 2 (ну, на самом деле нет, но выглядит именно так).https://semakin.dev/2020/05/python2_print/
Питонические атаки
Почему print(
Объяснение синтаксического трюка, который позволяет использовать print() как функцию в Python 2 и 3.
Форматтер кода — ещё один, на мой взгляд, незаменимый в работе инструмент. Проект
Это правда очень круто, когда вся кодовая база проекта абсолютно одинаково отформатирована. Глаз не отвлекается на всякие мелочи, код воспринимается легко. И для этого даже почти ничего не нужно делать!
https://semakin.dev/2020/05/black/
black
в последнее время быстро набирает популярность — многие проекты берует его к себе на вооружение.Это правда очень круто, когда вся кодовая база проекта абсолютно одинаково отформатирована. Глаз не отвлекается на всякие мелочи, код воспринимается легко. И для этого даже почти ничего не нужно делать!
https://semakin.dev/2020/05/black/
Питонические атаки
Форматируем код при помощи black
Автоматическое форматирование кода избавляет от бесконечных споров про пробелы, запятые и скобки, экономя нервы и часы код-ревью.
pipenv выпустил долгожданный релиз! Это значит, что проект будет жить!
Обновил статью про
Обновил статью про
pipenv
: https://semakin.dev/2020/04/pipenv/GitHub
GitHub - pypa/pipenv: Python Development Workflow for Humans.
Python Development Workflow for Humans. Contribute to pypa/pipenv development by creating an account on GitHub.