Питонические атаки
Kanalga Telegram’da o‘tish
Всяческие заметки про программирование на Python и другие весёлые истории.
Ko'proq ko'rsatish1 299
Obunachilar
Ma'lumot yo'q24 soatlar
-37 kunlar
-1130 kunlar
Postlar arxiv
1 299
more_itertools — расширение модуля itertools из стандартной библиотеки.
Код: https://github.com/more-itertools/more-itertools
Документация: https://more-itertools.readthedocs.io/
Библиотека содержит больше 100 различный функций-утилит, которые помогают обходить списки и итераторы более удобно, а также извлекать различные срезы, разбивать на части, склеивать обратно, проводить агрегации и так далее. Например:
* извлекать из списка или итератора значения чанками по N элементов (можно указать значение, которым должен быть дополнен последний чанк, либо он просто может быть меньше остальных);
* извлекать из итератора значения пересекающимися парами, по принципу abcd -> ab, bc, cd;
* превращать вложенную структуру в плоскую;
* расклеивать результат zip обратно в два отдельных итерируемых объекта;
* различные группировки, агрегации, оконные функции, выборки, комбинаторика...
Короче, прям много всего есть. Модуль itertools в стандартной библиотеке — очень бедный. Регулярно натыкаюсь на необходимость делать что-то чанками/батчами, в такие моменты more_itertools выручает.
#library1 299
Хорошие новости для маководов!
В PSF задонатили несколько macOS машин на процессорах M1, и их запрягли гонять тесты и сборки CPython в CI. И сразу же нашли какую-то проблему. Полезно!
Интересная, конечно, у CPython система CI. В эпоху облачных сервисов, где можно арендовать сколько угодно машин с какими угодно процессорами, такой подход с self-hosted CI выглядит странно🤔
https://twitter.com/pyblogsal/status/1441862701928570893?s=21
1 299
Python is a Bad Programming Language
Для разогрева задниц этим холодным осенним утром. Наброшено знатно. Какие ваши мысли?
https://medium.com/nerd-for-tech/python-is-a-bad-programming-language-2ab73b0bda5
1 299
PEP 654 -- Exception Groups and except* принят и появится в Python 3.11. Ух, будем запускать и ловить исключения целыми пачками!
1 299
В PyCharm 2021.3 добавят шаблон для создания проекта на FastAPI. Теперь это один из пяти официально признанных JetBrains веб-фермворков на питоне.
https://blog.jetbrains.com/pycharm/2021/09/pycharm-2021-3-eap/
#jetbrains #fastapi
1 299
Тэг Python совсем недавно обогнал тэг Java по общему количеству вопросов на StackOverflow. Отрыв с первым местом — JavaScript — составляет полмиллиона вопросов. Судя по количеству вопросов на этой неделе, разрыв может постепенно, очень медленно сокращаться.
Я вот только не знаю — это хорошо или плохо?
https://stackoverflow.com/tags
1 299
А вы знали, что для
flake8 можно создавать локальные правила, специфичные для конкретного проекта? Код таких проверок лежит по соседству с кодом, который они проверяют. Я вот только недавно узнал. Полезная фича.
https://medium.com/alan/sharing-good-practices-linters-37c4ffe8fc4c1 299
Кстати, прикольно, что Fork — это нативная программа для Mac (написано на Swift) и Windows (написано на С#), а не очередное Electron-приложение. Ещё более прикольно, что этот клиент — настоящий каноничный инди-проект. Его фулл-тайм разрабатывает супружеская пара Dan & Tanya Pristupov. Всегда удивляюсь, когда в нашем мире корпораций и команд разработки из сотен людей внезапно обнаруживаю такое. И оно живое. Инди-проекты всегда как-то с душой делаются.
Софтинка платная, но примерно как Sublime Text — можно бесплатно пользоваться сколько угодно, но иногда будут всплывать попапы. Говорят, что они всплывают достаточно редко и даже почти не бесят.
Узнал об этом клиенте вот отсюда и отсюда.
А какими Git-клиентами пользуетесь вы?
#git
1 299
Умные люди говорят, что не обязательно заставлять себя использовать консольный Git, если сложно. Есть много удобных GUI клиентов, с аккуратными кнопками вместо запутанных консольных команд. Даже просто визуализация дерева коммитов часто помогает разобраться в том, что происходит с репозиторием.
В статье автор показывает, как просто делать всякие продвинутые вещи с гитом через GUI-клиент Fork.
https://simplabs.com/blog/2021/05/26/keeping-a-clean-git-history/
#git
1 299
А вообще я люблю TUI-софт.
Нашёлся ещё один клиент — lazygit.
Сам пока не пользовался, но можно посмотреть, какую магию автор программы творит с её помощью: https://www.youtube.com/watch?v=CPLdltN7wgE
#git
1 299
tig — TUI (псевдографика в терминале) клиент для Git.
Удобно добавлять в staging отдельные файлы или даже отдельные строки в файлах. Умеет более красиво показывать диффы, списки коммитов, блеймы и т.д. Но сначала придётся научиться им управлять, хоткеи похожи на vim'овские.
#git
1 299
Объяснение популярных команд Git на котиках.
https://girliemac.com/blog/2017/12/26/git-purr/
#git
1 299
Gitlint is a git commit message linter written in python: it checks your commit messages for style.
Код: https://github.com/jorisroovers/gitlint
Документация: https://jorisroovers.com/gitlint/
Есть много разных встроенных правил, например, умеет ограничивать длину первой строки, запрещать trailing spaces, требовать наличия определенного паттерна в сообщении (например, идентификатор тикета в Jira). Также умеет энфорсить Conventional Commits.
Подключается в виде гит-хука через pre-commit.
#git
1 299
Git Undo — инструмент, который может отменить любое действие в Git.
С этой штукой больше не придётся удалять и скачивать заново сломанный репозиторий. Очень легко вернуться в "здоровое" состояние, когда что-то идёт не так. Оно может отменить практически что угодно:
* коммиты;
* изменение сообщения коммита (amend);
* мёрджи и ребейзы;
* переключения между ветками и коммитами;
* создание, обновление и удаление веток.
Тулза прицепляется в Git при помощи хуков и записывает все произведенные изменения. Можно отменять сколько угодно шагов назад, не только последний. Магия!
https://blog.waleedkhan.name/git-undo/
#git
1 299
День Git на канале!
Git сложен: легко всё испортить, и нереально понять как исправить. Документация Git - это финиш: чтобы найти решение, тебе заранее надо знать название фишки, которая вернет всё на место.
Разбор частых проблем с Git с командами для починки.
https://ohshitgit.com/
#git
1 299
Эрик Айдл уже в преклонных годах. Он сидит в Твиттере, и однажды до него дошли слухи, что в честь его комедийного шоу придумали какой-то язык программирования. В тред пришёл Гвидо ван Россум, большой фанат скетчей Monty Python.
"very nice" — это отсылочка к сцене с французами на стене замка в "поисках святого грааля".
https://twitter.com/gvanrossum/status/1355310333875773444?lang=en
#montypython
1 299
Эрик Айдл (Eric Idle) — актёр и автор многих скетчей комедийной группы Monty Python.
В честь него назван IDLE — Python’s Integrated Development and Learning Environment — простенький редактор кода, распространяющийся в составе стандартной библиотеки.
А ещё есть Eric IDE — редактор кода, написанный на питоне. Тоже отсылка к Эрику Айдлу.
#montypython
