en
Feedback
Питонические атаки

Питонические атаки

Open in Telegram

Всяческие заметки про программирование на Python и другие весёлые истории.

Show more
1 299
Subscribers
No data24 hours
-37 days
-1130 days
Posts Archive
О, кстати, прикол. Не задумывался, что лямбда-функции тоже можно аннотировать. Делать я так, конечно, всё равно не буду. Твит
О, кстати, прикол. Не задумывался, что лямбда-функции тоже можно аннотировать. Делать я так, конечно, всё равно не буду. Твит здесь.

А ещё в 3.12 в очередной раз улучшат сообщения об ошибках. Интерпретатор научится догадываться о забытых импортах модулей из
+1
А ещё в 3.12 в очередной раз улучшат сообщения об ошибках. Интерпретатор научится догадываться о забытых импортах модулей из стандартной библиотеки, а также подсказывать про забытый self. Взял отсюда и отсюда.

Разные либы 🚀 продолжают релизить версии с поддержкой Python 3.11. Напоминаю, что есть такой классный сервис, который отслеж
Разные либы 🚀 продолжают релизить версии с поддержкой Python 3.11. Напоминаю, что есть такой классный сервис, который отслеживает поддержку конкретной версии популярными библиотеками — https://pyreadiness.org/3.11/. Сейчас поддержка 3.11 находится на уровне всего 19.4%, но цифра каждый день увеличивается. Это, конечно, не означает, что остальные 80% пакетов не заработают с 3.11. Это лишь значит, что они не задекларировали у себя эту поддержку явно. Для сравнения, уровень поддержки Python 3.10 сейчас равен 63%, а 3.9 — 75%.

Почти одновременно со стабильным релизом 3.11.0 вышел первый альфа-релиз следующей версии — 3.12.0a1! И начали появляться пер
Почти одновременно со стабильным релизом 3.11.0 вышел первый альфа-релиз следующей версии — 3.12.0a1! И начали появляться первые сообщения о том, что нас там ждёт. Например, питон научили работать с профилировщиком perf из линукса. Можно будет отлаживать код на питоне, и видеть как вызовы функций внутри библиотек на C/Rust, так и вызовы функций внутри самого интерпретатора, и даже то, что происходит в это время в ядре ОС, включая даже всякие счётчики и кэши процессора. Это, конечно, можно было делать и раньше, но теперь, начиная с 3.12, профилировщик будет понимать код на питоне, так что станет куда проще соотносить результаты анализа с конкретными кусками кода в вашей программе. Стоит отметить, что это будет работать только на Linux, потому что perf — чисто линуксовый инструмент, который зашит прямо в ядро ОС. Думаю, это изменение — это побочный результат работы Pablo над профилировщиком memray. В треде в твиттере больше подробностей и есть ссылка на черновик документации.

Всем доброго понедельника! Если кто-то, как и я, ждал новой версии pyenv, чтобы наконец поставить свежих питонов, то идите об
Всем доброго понедельника! Если кто-то, как и я, ждал новой версии pyenv, чтобы наконец поставить свежих питонов, то идите обновляйтесь. Несколько дней назад там наконец появился стабильный 3.11.0.

Чем дольше смотрю, тем больше нравится. Символично, что два острова связывает лишь небольшой мост. Кажется, что культура и об
Чем дольше смотрю, тем больше нравится. Символично, что два острова связывает лишь небольшой мост. Кажется, что культура и обычаи на северном и южном островах совсем разные. Только что говорят на одном языке, да и то с разными акцентами. Редко вылажу из своего асинхронного леса, но иногда заносит на юг, и каждый раз я такой: "ёшкин кот, о чём вообще говорят эти волшебники, чем они тут занимаются?". А вы где на карте обычно обитаете? Утащено отсюда, автор Nikolay Markov. Люблю красивые картинки.

А вы заценили красивую картинку, которую Pablo подготовил для этого релиза? Уже второй релиз с красивой картинкой. Прям хоть
А вы заценили красивую картинку, которую Pablo подготовил для этого релиза? Уже второй релиз с красивой картинкой. Прям хоть на футболку печатай. Есть уже первые обновившиеся до 3.11? Делитесь впечатлениями!

⏰ Напоминаю, через 30 минут начало стрима с релизом Python 3.11: https://youtube.com/watch?v=PGZPSWZSkJI

Сегодня с утра меня пайчарм встретил вот такой плашечкой. Умный, чертяга. Чует приближающийся релиз! #jetbrains
Сегодня с утра меня пайчарм встретил вот такой плашечкой. Умный, чертяга. Чует приближающийся релиз! #jetbrains

Запустился уже шестой по счету ежегодный опрос Python Developers Survey от PSF и JetBrains. Как обычно, вопросы про версии языка, используемые фреймворки, библиотеки, инструменты и так далее. Надо проходить! https://surveys.jetbrains.com/s3/c1-python-developers-survey-2022

Уже примерно через сутки произойдёт релиз Python 3.11! Как и год назад, весь процесс будет проходить в прямом эфире, будут ра
Уже примерно через сутки произойдёт релиз Python 3.11! Как и год назад, весь процесс будет проходить в прямом эфире, будут разные гости с торжественными речами. Смотреть вот тут. Вы как, готовы уже обновлять все свои программки?

Бесплатный курс про тайп-хинты от Никиты Соболева. Ну это надо брать, я считаю.

Repost from FEDOR BORSHEV
Типы в Python Я познакомился с типизацией в Python ещё в 2018 году. Вернее не совсем познакомился — просто мы начали писать какие-то аннотации, без правил: кто хотел, тот и писал. С виду довольно бесполезное занятие — автодополнения не было, по рукам, если накосячил, никто не бил. Дальше такой опциональной типизации мы тогда не пошли — нормального инструментария не было. Даже в такой типизации была польза: когда пишешь код с типами, начинаешь гораздо больше думать об API и данных, чем об алгоритмах и синтаксисе языка. Сдвиг мышления похож на то, что происходит с TDD — с ходу не видишь пользы, но если вкуришь, то мышление траснформируется и больше не возвращается обратно. В 2021 году я наконец-то смог сделать проект по фен-шую: с django-stubs и mypy. На мой взгляд, стало гораздо лучше: помимо автодополнения и стандартизации кодовой базы, радикально улучшилась читаемость. Последний пункт особенно важен сейчас, когда я захожу в проекты пару раз в месяц, и с ходу должен понять, над чем работает команда. С типизацией согласны далеко не все: и в нашей команде и в питоньем мире в целом есть чуваки, которые думают, что типы в коде забирают больше времени, чем экономят. Я этих ребят понимаю — сам несколько лет не мог определиться. До сих пор отдаю решение об обязательности типов в команду проекта: если хотят писать с нестрогими типами или вообще без них — пожалуйста. В общем для согласных, несогласных и тех, кто хочет радикально улучшить знания по типизации, мы с Марьяной позвали в Школу Никиту Соболева. Если вдруг не знаете Никиту — он один из авторов django-stubs, член Django Software Foundation, коммитит в mypy, typeshed и CPython. Никита прочитает цикл из трёх вебинаров — об устройстве типов, о тайпчекерах и о практическом применении всего этого. Курс — бесплатный: времена располагают, да и сообществу надо помогать. Для желающих получить обратную связь есть тариф с домашкой и сертификатами, 30% выручки от которого пойдёт на развитие системы типов в Python. Стартует 11 октября, читаем по одному вебинару в неделю, заканчиваем 31 октября. Зарегистрироваться →

Там проект Faster CPython (это где Гвидо ускоряет питон) опубликовал цели, над которыми собираются работать в рамках релиза 3.12. * Вероятно, наконец станет можно запускать саб-интерпретаторы прямо из кода на питоне. Это позволит занять интерпретаторами все ядра в нескольких потоках (не процессах!), потому что у каждого будет свой собственный GIL. * Зачатки JIT будут развиваться — добавят больше специализированных оп-кодов, интерпретатор научится заменять оп-коды на более эффективные целыми пачками, а не по одному. * Сделают структуры в пямяти более компактными. Хотят уменьшить служебную информацию, которая приделывается к каждому объекту, с 5 до 2 машинных слов. Ожидается, что от этого не только уменьшится количество потребляемой памяти для всех программ на питоне, но и кэши процессора будут использоваться эффективнее. https://github.com/faster-cpython/ideas/wiki/Python-3.12-Goals

Repost from Code Mining
Energy Efficiency across Programming Languages Увлекательное и довольно очевидное по выводам исследование опубликовали коллег
+1
Energy Efficiency across Programming Languages Увлекательное и довольно очевидное по выводам исследование опубликовали коллеги из Португалии в 2017 году. Рецепт прост: взяли 27 языков, взяли приличный список программ для замера эффективности исполнения (потребление энергии, время, ресурсы памяти), свели результаты в таблички. Конечно не без выводов, но таблица как бы намекает ;) Насладиться научным подходом можно здесь. ЗЫ: только тссс, зелёным не говорите, а то ещё с забастовками против Python будут выходить.

Repost from ITGram
🐍 debuglater is a Python library that saves stacktrace into a file when your app crashes with an exception. Not just a traceback, but the whole stack, including all variables. It's all is saved using dill, so if you have the same code, you can load the saved stacktrace into a pdb session and debug the crash, as if you could if you had put an actual breakpoint into the place of failure. Pretty cool, huh?

А теперь про действительно важное. В каких кавычках вы пишете строковые литералы в коде? А расскажете почему?
Anonymous voting

Говорят, numpy протестился под 3.11 и даже выложил колёса, так что теперь можно (нужно?) тестировать всё, что зависит от nump
Говорят, numpy протестился под 3.11 и даже выложил колёса, так что теперь можно (нужно?) тестировать всё, что зависит от numpy.

Ну и чтобы два раза не вставать, давайте сразу посмотрим на результаты Python Developers Survey 2021, который проводили PSF и
+1
Ну и чтобы два раза не вставать, давайте сразу посмотрим на результаты Python Developers Survey 2021, который проводили PSF и JetBrains в конце прошлого года. Опять же, выпишу некоторые пункты, за которые зацепился глаз. * Переход на Python 3 продолжается. В 2020 году было 94% перешедших, а в 2021 уже 95%. Видимо, все кто мог, уже обновились, а дальше ещё долго будет тянуться хвост из тех, кому обновляться слишком сложно и дорого. * На конец 2021 года самой популярной версией интерпретатора была 3.9. Тогда только-только вышла 3.10, но на неё уже успело перейти 16% пользователей. Остальные версии постепенно убывают. * FastAPI стабильно закрепился в тройке популярных веб-фреймворков со значительным отрывом от четвёртого места, которое занял Tornado. При этом FastAPI самый молодой фреймворк в рейтинге. Первое и второе место рейтинга, думаю, называть не нужно. * В этом году в опрос добавили вопросы про packaging. Похоже, сообщество почти поровну разделилось на пользователей poetry, pipenv и pip-tools. Большинство разработчиков продолжают пользоваться ванильным pip.