LINUX.ORG.RU

Python 3.13

 , ,


1

5

После года разработки вышла новая стабильная версия интерпретируемого языка программирования Python 3.13. Релиз включает изменения в собственно языке и его стандартной библиотеке. К важнейшим изменениям относятся использование нового интерактивного интерпретатора по умолчанию, экспериментальная поддержка работы в режиме free-threaded (т. е. с отключением global interpreter lock) (PEP 703), и JIT-компилятор (PEP 744).

С этого релиза осуществлён переход на новый цикл релизов Python (Annual Release Cycle for Python, PEP 602), в связи со стремлением расширить период «полной поддержки» новых выпусков:

  • Python 3.9–3.12 имеют полтора года полной поддержки, за ними следует три с половиной года исправления брешей в безопасности.
  • Python 3.13 и более поздние релизы будут иметь два года полной поддержки и три года исправлений уязвимостей.

Продолжается работа по усовершенствованию сообщений об ошибках. Теперь traceback’и по умолчанию подсвечиваются цветом. Встроенная функция locals() теперь имеет определённую семантику для изменения возвращаемого меппинга (PEP 667), а параметры типов (typing.TypeVar, typing.ParamSpec, typing.TypeVarTuple) поддерживают значения по умолчанию (PEP 696).

Изменения стандартной библиотеки включают удаление устаревших API и модулей (aifc, audioop, cgi, cgitb, chunk, crypt, imghdr, mailcap, msilib, nis, nntplib, ossaudiodev, pipes, sndhdr, spwd, sunau, telnetlib, uu и xdrlib), а также привычные улучшения в области дружелюбия к пользователю и корректности. Несколько модулей исключены из поставки в связи с объявлением их устаревшими в Python 3.11 (PEP 594), в том числе инструмент и библиотека 2to3.

Из улучшений безопасности стоит отметить, что ssl.create_default_context() устанавливает флагами по умолчанию ssl.VERIFY_X509_PARTIAL_CHAIN и ssl.VERIFY_X509_STRICT.

Добавлена поддержка платформ: Apple iOS и Android теперь официально поддерживаемые платформы (tier 3) (PEP 730, 738). wasm32-wasi поддерживается на уровне tier 2, прекращена официальная поддержка wasm32-emscripten.

Для более основательного ознакомления с нововведениями релиза, обращайтесь к официальной документации (по библиотеке, по языку). Руководствуйтесь статьей «Переход на Python 3.13» для обновления своих проектов на новую версию языка. Также см. changelog.

>>> Подробности



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 7)

Ответ на: комментарий от rtxtxtrx

Либо обратная совместимость есть, либо ее нет.

akho
()

Лагранж обогнали. До гнома не дотянем. Ибо гном велик. Наверное, ту тему не читал.

alt-tab-let ★★
()
Ответ на: комментарий от arcanis

спасибо, к сожалению нет, про скалу ничего не знаю, я что-то вроде пхп-макаки по большей части, для джавы писал когда-то давно JNI, многопоточные вещи

asdpm
()
Ответ на: комментарий от arcanis

так-то мутабельные типы могут работать, если реализуют equals/hashcode контракт, просто ответственность переходит к пользователю, что приведет объект в старое состояние, если ему понадобится

когда с этим разбирался, у меня сложилось впечатление, что на set это ограничение зачем-то искусственно наложили намеренно поломав hash, хотя фиг его знает.

вы сначала иммутабельные типы заведите кроме строк и кортежей

ну, что-то всё же есть:

>>> {frozenset([1, 2, 3]): True}[frozenset([3, 1, 2])]
True
asdpm
()
Ответ на: комментарий от alt-tab-let

в языках типа java с .что-то().гдето().тама().ещё().двакилометра()

мне думается ее изначально делали с расчетом на всякие интеллисенсы, что в целом-то правильно

фишка python в том, что я его не учил. вообще. я просто думал

да.

но я предполагаю, третий питон не сильно отличается в этом плане, ну наткнулся ты на несколько вещей, ну что теперь

asdpm
()
Ответ на: комментарий от asdpm

мне думается ее изначально делали с расчетом на всякие интеллисенсы, что в целом-то правильно

я про чтение глазами. код, который можно быстро прочесть и оценить. я пишу в mcedit последние лет 20, до этого в редакторе дос-навигатора, и для python меня это полностью устраивает.

но я предполагаю, третий питон не сильно отличается в этом плане

ну да, но приходится писать больше, хотя ты знаешь, что данные идентичны и лучше бы этого не делать. но это мелочи совсем, естественно я буду на python3, куда я денусь?

alt-tab-let ★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.