LINUX.ORG.RU

Python 3.2.1

 


0

2

10 июля состоялся релиз Python 3.2.1. Напомню, что в данный момент для ветки 2.х выпускаются лишь исправления ошибок, а все нововведения реализуются только для ветки 3.х. Релиз отмечен тем, что разработчики уделили большее внимание стандартной библиотеке. В частности, версия 3.2.1 включает:

  • Множественные улучшения модуля unittest
  • Возможность компиляции более одного .pyc-файла для одного файла с исходным кодом, а также модулей расширений .so, соответственно при наличии нескольких установленных интерпретаторов Python (PEP 3147 и PEP 3149)
  • Новая библиотека futures для работы с потоками и процессами в рамках конкурентного программирования (PEP 3148)
  • Постоянный ABI для модулей расширений (PEP 384)
  • Настройка ведения логов на основе словаря (PEP 391)
  • Переработка GIL с целью уменьшения конфликтов
  • Расширенный пакет email
  • Улучшение модуля ssl с поддержкой SSL-контекстов и сравнением имени хоста, предоставляющего сертификаты
  • Расширенный модуль shutil с поддержкой файлов-архивов
  • Модуль sysconfig для доступа к системным настройкам
  • Множественные улучшения в configparser
  • Улучшения в дебаггере pdb
  • Множественные улучшения в операциях со строковыми и байтовыми переменными
  • Прочие улучшения

Полный список изменений

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

>Постоянный ABI для модулей расширений

3.2.1

питон такой питон. как всегда не нужный, как всегда медленный

ArtemZ ()

конкурентного программирования

с целью уменьшения конфликтов

ведения логов

файлов-архивов

anonymous_incognito незачет. Очень коряво.

baverman ★★★ ()

Третий питон не нужен, пока не запилят его поддержку в джанге.

mega_venik ★★★ ()
Ответ на: комментарий от ArtemZ

ArtemZ

как всегда не нужный, как всегда медленный

В каждом треде про питон! В каждом!

o ()

У меня такое острое впечатление, что это список изменений не про 3.2.1, а про всю ветку 3.2

anonymous ()

Спорим, в новости есть деза?

Jayrome ★★★★★ ()
Ответ на: комментарий от anonymous

что это список изменений не про 3.2.1, а про всю ветку 3.2

Анонимус, как всегда, прав.

baverman ★★★ ()

А что представляют из себя pyc? И да, переработка GIL?

KblCb ★★★★★ ()

С 3-ей ветки питон стал работать медленнее. Не угробят ли, вообще, проект?

kOde ()

блин - пока все либы нужные на python3 портируют - это же сколько времени пройдет ;( печалька, а очень хочется погонять хотя бы в unstable продакшене (да да - такой есть ;)))

real_maverick ★★★ ()
Ответ на: комментарий от KblCb

А что представляют из себя pyc?

Байткод

И да, переработка GIL?

Его сделали не tick-based, а time-based, что должно улучшить поведение на IO-bound задачах.

baverman ★★★ ()

Пускай сначала GIL удалят, а потом новые версии выпускают.

post-factum ★★★★★ ()

>Новая библиотека futures для работы с потоками и процессами в рамках конкурентного программирования (PEP 3148)

GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL GIL

anonymous ()

>Python 3.2.1

3

2

1

Пуск!

//Без джанги не нужен.

mikhalich ★★ ()
Ответ на: комментарий от post-factum

Пускай сначала GIL удалят

Удивительное дело, как так получается, что GIL очень сильно мешает субъектам, не использующим питон?

baverman ★★★ ()

Вот все GIL, GIL... А реально кто-нибудь тестировал тормоза многопоточного программирования в python? Что-то вроде «вот на си++ переход на 8 потоков дал прирост производительности в 30%, а в python всего лишь 5%». А то такое ощущение, что все Лутца начитались и давай косить бедный язык на чем свет стоит.

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

а в python всего лишь 5%"

На старом GIL, на нескольких ядрах, как раз просаживалось и очень сильно (CPU-bound). Это послужило толчком к переписыванию реализации.

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

Тогда ждем :) Они же, насколько я понял, обещают когда-нибудь выпилить GIL? В других то реализациях python его нет и все прекрасно себя чувствуют. В наше время немного грустно без многопоточности.

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

Они же, насколько я понял, обещают когда-нибудь выпилить GIL?

Не дай бог. Ты вообще, писал потокобезопасный код? Чую нет.

В других то реализациях python его нет и все прекрасно себя чувствуют.

AFAIK только в jython. И он тормоз, ага.

В наше время немного грустно без многопоточности.

Еще ни разу не грустил.

baverman ★★★ ()
Ответ на: комментарий от delete83

>Что-то вроде «вот на си++ переход на 8 потоков дал прирост производительности в 30%

У меня при переходе на 8 потоков производительность C программы упала в два раза. Все зависит от задачи. У меня было перемножение матриц размером 300мегабайт

demmsnt ()

>Расширенный модуль shutil

libpetrosyan.so

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

>В каждом треде про питон! В каждом!

«Женщины думают только о том, что мужчины думают только об одном» ;)

KRoN73 ★★★★★ ()
Ответ на: комментарий от delete83

>А реально кто-нибудь тестировал тормоза многопоточного программирования в python?

В EVE Online изтестировались. В итоге на Stackless перешли.

KRoN73 ★★★★★ ()

Пока не пользовался, но одобряю.

Сижу на 2.6-2.7, код стараюсь писать такой, чтобы и в 3.x работал.

И да, про тормоза и GIL:

1) Используйте эффективные структуры и алгоритмы. И определитесь наконец - «Лишний сервер дешевле часа разработчика» или «Должно работать быстрее кода на C!!!»

2) Используйте уже не потоки, а эффективное межпроцессорное взаимодействие.

Задолбали.

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

>> Они же, насколько я понял, обещают когда-нибудь выпилить GIL?

Не дай бог. Ты вообще, писал потокобезопасный код? Чую нет.


Почему бы в Питоне просто не ввести те же sychronize, как в Java?

KRoN73 ★★★★★ ()
Ответ на: комментарий от xeningem

>И определитесь наконец - «Лишний сервер дешевле часа разработчика»

Ого. Где разработчики получают по два килобакса в час? Хотеть! :)

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

Почему бы в Питоне просто не ввести те же sychronize, как в Java?

Как программист с опытом, честно признаюсь, я бы не отказался от нормальных потоков. Дополнительный оверхед на синхронизацию (в строках кода) не такой уж и большой. И это позволит расширить область применения питона.

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

Поэтому пусть питон остается таким как есть — максимально безопасным.

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

>Но с другой стороны есть орава новичков, которые перестреляются, нахрен.

На PHP куда как больше и не перестрелялись же :)

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

Я тоже к stackless присматриваюсь, но пока изучаю язык, решил не отходить от канонической реализации.

delete83 ★★ ()
Ответ на: комментарий от ArtemZ

>>Постоянный ABI для модулей расширений

3.2.1

питон такой питон. как всегда не нужный, как всегда медленный


где твоя адекватность? При чем здесь цитата и высер твой?

kost-bebix ★★ ()
Ответ на: комментарий от baverman

> > Третий питон не нужен, пока не утвердят wsgi

fix


утвердили же

kost-bebix ★★ ()
Ответ на: комментарий от delete83

Я тоже к stackless присматриваюсь

Он подходит только для узкого круга задач.

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

> В наше время немного грустно без многопоточности.

Еще ни разу не грустил.

А вот я грустил, когда оказалось, что в один поток моя программа на си работает неправильно. Точнее системные вызовы отрабатывают как-то странно. Мне ПРИШЛОСЬ переписать код на три потока и в итоге выигрыш в производительности был примерно 100%. Вот так вот бывает.

И тут уже упоминали stackless python. Он тоже без GIL. Есть еще поделка от гугла, но хрен знает как у них там дела. Не интересовался как-то, жив ли проект.

delete83 ★★ ()
Ответ на: комментарий от real_maverick

> блин - пока все либы нужные на python3 портируют - это же сколько времени пройдет ;( печалька, а очень хочется погонять хотя бы в unstable продакшене (да да - такой есть ;)))


python 2 и так хорош. Так что подождем.

kost-bebix ★★ ()
Ответ на: комментарий от baverman

> Его сделали не tick-based, а time-based, что должно улучшить поведение на IO-bound задачах.


давно уже. Здесь что-то еще другое сделали.

kost-bebix ★★ ()
Ответ на: комментарий от post-factum

Пускай сначала GIL удалят, а потом новые версии выпускают

gil удалять не будут, если мне не изменяет склероз, когда попытались от него избавится, тормозов стало еще больше.

real_maverick ★★★ ()
Ответ на: комментарий от post-factum

> Пускай сначала GIL удалят, а потом новые версии выпускают.

GIL удалить не проблема, только вот питон в 2 раза медленнее от того станет (прикинь, надо лочить под себя переменную при каждом чихе). А задач, где нужна многозадачность на питоне либо мало либо через процессы. Так что не трогайте GIL, GIL нужен.

kost-bebix ★★ ()
Ответ на: комментарий от baverman

Питон станет в 2 раза медленнее, уже пытались GIL выпилить. Потому сначала быстрым его надо сделать (см. pypy), а потом попробовать выпилить GIL (см. pypy).

Ну и снова таки, задач с многопоточностью очень мало.

kost-bebix ★★ ()
Ответ на: комментарий от delete83

> Он тоже без GIL

Откуда инфа, что в stackless нет gil? Там просто есть удобный механизм для акторов и проч. Ну и хвостовая рекурсия там. Больше ничего особенного.

kost-bebix ★★ ()
Ответ на: комментарий от mikhalich

> >жив ли проект.

мертв.


Жив. Только теперь называется PyPy. Недавно влили ветку stackless. И да, напоминаю, что в stackless таки есть GIL.

kost-bebix ★★ ()
Ответ на: комментарий от kost-bebix

Вы про UnladenSwallow? Я из гугловских пистонов знаю только его. Там вроде признали, что делать надо много и интерес гугла пропадает.

mikhalich ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.