Питонические атаки
رفتن به کانال در Telegram
Всяческие заметки про программирование на Python и другие весёлые истории.
نمایش بیشتر1 299
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-37 روز
-1130 روز
آرشیو پست ها
1 299
Вы же знаете, что по умолчанию для работы с текстовыми файлами Python использует кодировку UTF-8 на Unix, но не на Windows? Там он возьмёт системную кодировку, типа Win-1251, в зависимости от локали.
Это значит, что если не указать кодировку, то программа будет вести себя по-разному на разных платформах, и текстовые файлики с эмодзями, кириллицей и прочими загадочными иероглифами, записанные на macOS, не будут читаться на Windows. Или даже ещё забавнее — файлики, созданные в русифицированной Windows, не будут нормально читаться в какой-нибудь арабской Windows.
Это поведение было выбрано, чтобы Python вёл себя привычным для платформы образом и не было проблем с другими программами. Например, можно через Python создать текстовый файл, а затем открыть его в Блокноте, и увидеть там правильные буквы, а не крокозябры — в старых версиях Windows это было очень актуально. С другой стороны, это усложняет переносимость программ — нужно специально везде указывать кодировки явно, чтобы получить одинаковое поведение на разных платформах.
Сегодня уже ясно, что пластмассовый мир победил и юникод оказался сильней. Практически повсеместно используется UTF-8. Одна универсальная (пусть и не всегда компактная) кодировка куда практичнее, чем множество узкоспециализированных.
И в Python тоже обсуждается переход на UTF-8 везде по умолчанию. Даже на Windows. Но произойдёт это не раньше версии 3.13.
Кстати, в 3.10 при помощи флажка уже можно включить ворнинги, и поймать все места, где у вас при работе с текстовым вводом-выводом не указана кодировка явно. Это подготовка к всеобщему переходу на UTF-8.
#pep #unicode
1 299
Переезд с BPO на GitHub Issues начнётся сегодня. Думаю, на выходных оба баг-трекера будут недоступны. Так что если вы вдруг обнаружите баг в питоне, лучше попридержите проблему до понедельника и зашлите её сразу же в GitHub Issues 🌝
https://discuss.python.org/t/github-issues-migration-status-update/14573
1 299
Уже 3.10.4 вышел. Каждую неделю релизы, ух!
Ничего особо не поменялось, но починили сборку на старом-старом CentOS 6.
https://discuss.python.org/t/python-3-10-4-and-3-9-12-are-now-available-out-of-schedule/14568
1 299
Кубок 🏆 в школьном соревновании по программированию черепашьей графики на Python. Выглядит круто!
https://www.reddit.com/r/Python/comments/ti7uyh/i_teach_python_for_middle_and_high_schoolers_i/
1 299
Кстати, как вы читаете имя нашего польского developer in residence?
1 299
Meta (ага, та самая ныне экстремистская организация) продолжает донатить крупные суммы денег в Python Software Foundation. Напомню, что Python является для них довольно важной платформой — они даже поддерживают свой форк интерпретатора Cinder и пилят тайп-чекер pyre.
Благодаря этому пожертвованию, доказавшая свою успешность программа “Developer in residence” продляется еще как минимум на год. Łukasz Langa продолжает трудиться над нуждами проекта фулл-тайм до 2023.
https://pyfound.blogspot.com/2022/03/meta-deepens-its-investment-in-python.html
1 299
На самом деле PEP-594 уже давнишний, но ему постоянно переносят версии удаления. Наверное, чтобы подольше сохранить совместимость с Python 2 и не создавать лишних проблем обновляющимся. Вот, знайте, в 3.11 грядет большое количество новых депрекейшнов, а в 3.12 уже будут удалять.
1 299
Repost from Chernov sharit
А вы говорите у вас на проекте legacy. Тут в python закинули PEP по удалению неиспользуемых батареек и большинство датируется 90х годами.
https://peps.python.org/pep-0594/
#python
1 299
В Python 3.11 стандартная библиотека пополнится модулем
tomllib — как можно догадаться по названию, это про работу с TOML файлами. TOML уже стал популярным форматом для описания конфигурации, но до сих пор работа с ним в питоне возможна только через сторонние модули.
Отсутствие в стандартной библиотеке модуля для работы с этим форматом создаёт сложности для разного тулинга, который хочет читать оттуда свои настройки — форматтеры, линтеры, утилиты, связанные с управлением зависимостями и пакетированием. Особенно страдают именно утилиты из последней категории, например, pip или pipenv — они не могут позволить себе зависеть от сторонних пакетов. Им приходится просто вендорить стороннюю библиотеку к себе в код (Ctrl+C, Ctrl+V🗿).
Пока что tomllib будет уметь только читать формат. Интерфейс, по традиции, похож на json (load и loads). Запись решили не делать, потому что сложно, много нюансов, и мало кому нужно.
Сейчас есть тенденция на вынос разного старого ненужного из разросшейся стандартной библиотеки языка (те самые подтекающие батарейки 🪫), да и новые модули без большой нужды стараются не добавлять. Но TOML обещает стать новым стандартом для конфигурации в экосистеме Python (как уже стал в некоторых других экосистемах), так что добавление такой библиотеки точно оправдано.
https://peps.python.org/pep-0680.html
#pep #toml1 299
Недавно вышел mypy 0.940 с экспериментальной поддержкой паттерн-матчинга из Python 3.10. Тайп-чекер умеет выполнять проверку на полноту (exhaustiveness checking) для енумов и юнион-типов. Это полезно!
https://mypy-lang.blogspot.com/2022/03/mypy-0940-released.html
#mypy
1 299
В репо
faster-cpython выложили результаты сравнения производительности ветки main (это будет 3.11) с 3.10. И по большинству бенчмарков оно и правда становится быстрее!
https://github.com/faster-cpython/ideas/blob/main/main-vs-310.rst1 299
В PSF в честь Pi Day (14 марта) объявили фандрайзер. Обратите внимание, какие забавные суммы они собирают!
https://psfmember.org/civicrm/contribute/transact?reset=1&id=37
1 299
А вы знали, что
attrs поддерживает Python 2.7? Точнее, теперь об этом уже стоит говорить скорее в прошедшем времени.
https://github.com/python-attrs/attrs/pull/936
#python21 299
Обновился до macOS Monterey 12.3. Подтверждаю, Python 2 пропал.
К счастью, для того проекта, где он мне нужен, у меня уже было до обновления создано виртуальное окружение, и оно нормально работает 😅
Так что я пока ничего делать не буду. А вообще, говорят, можно поставить Python 2 из Homebrew.
#macos #python2
1 299
Кстати, Python 3.10.3 вышел. Так багфиксы и исправления разных секьюрити проблем. Надо обновляться!
https://blog.python.org/2022/03/python-3103-3911-3813-and-3713-are-now.html
1 299
Вам всегда в питоне не хватало указателей и арифметики над ними? Держите, пользуйтесь, теперь такое есть! (Пожалуйста, не надо)
https://github.com/ZeroIntensity/pointers.py
1 299
Ещё одна новость, про помощь.
Сообщество помогло вывезти близких Сергея Сторчака из Украины и найти им временное жильё. Łukasz Langa даже поехал в Варшаву, чтобы лично их встретить и помочь обустроиться.
Из твиттера Сергея:
> My sister and her family are near the nuclear power plant, which is a strategic target. My young nephew is in Kyiv and may die in one of the battles. These are the people dearest to me, I live only for them and my mother.
Само собой, сам Сергей, как военнообязанный, не может выехать из страны (да и не факт, что хочет). Ну, хотя бы его семья теперь в безопасности.
Горд быть частью такого коммьюнити, где люди не только холиварят про синтаксис и запятые, но и поддерживают друг друга, и даже готовы куда-то ехать и тратить не только деньги, но и драгоценные моменты собственной жизни, чтобы кому-то стало спокойнее и безопаснее.
https://www.reddit.com/r/Python/comments/t9dd6n/family_of_key_python_contributor_storchaka_has/
1 299
Происходящее всё равно никак не получается игнорировать, поэтому все посты получаются немного грустные. Но сегодня и о хорошем тоже напишу.
Как минимум двое из core-разработчиков CPython сейчас находятся в Украине — Сергей Сторчака и Андрей Светлов. От Андрея я за последнее время не увидел никаких новостей, а Сергей время от времени освещает в твиттере происходящие вокруг него события.
Если следите за развитием Python в последнее время, то вы обязательно слышали эти имена и знаете, какой огромный вклад вносят в проект оба этих человека. Андрей Светлов у меня в основном ассоциируется с асинхронщиной в питоне, а Сергей — он просто вносит какое-то невероятное количество разных фич и фиксов. Серьёзно, открываешь любой ченджлог на любую версию питона за последние 5 лет, и там обязательно будет несколько изменений от Serhiy Storchaka.
Кажется, что оба из них находятся в относительной безопасности. Я заключил это по тому, что новые коммиты от них появляются почти каждый день. Удивительно увлечённые своим делом люди! 💪
Надеюсь, что острая фаза пиздеца поскорее закончится и что грустных новостей дальше будет меньше. Берегите себя!
1 299
> Это происходит не по вашей вине, и мы приносим вам свои глубочайшие извинения.
Такие простые слова, но чёт тронуло. Наверное, на контрасте. Просто последние недели я каждый день читаю эти отвратительные прощальные письма с нотками осуждения по типу «ты, лично ты — агрессор, поэтому мы тебе всё и отключаем». Ну, либо просто сухие официальные, что не сильно лучше. А тут как-то по-человечески прям.
И сразу же понимаешь, что JetBrains во всей этой ситуации тоже вроде как пострадавшие. Они ведь довольно сильно связаны с Россией, хоть никогда и не были российской компанией.
#jetbrains
