LINUX.ORG.RU

Python 3.2

 


0

0

20 февраля вышел Python 3.2.

Так как действует «Мораторий на измение языка» (PEP-3003), то синтаксис языка остался прежним; было внесено всего несколько изменений во встроенные типы.

Усилия разработчиков были сконцентрированы на стандартной библиотеке и поддержке портирования кода на Python3.

Среди изменений стоит отметить:

  • множественные изменения в модуле unittest;
  • PEP 3147, поддержка PYC Repository Directories;
  • PEP 3149, поддержка контроля версий динамически-подключаемых библиотек;
  • PEP 3148, futures — новая библиотека для асинхронных вычислений (конкурентного программирования);
  • PEP 384, стабильное ABI для модулей расширений;
  • значительно переделан GIL (Global Interpreter Lock);
  • расширенный пакет email, который поддерживает байтовые сообщения;
  • значительно улучшен модуль ssl;
  • новый модуль sysconfig;
  • улучшения модуля shutil, среди которых стоит отметить поддержку архивов;
  • множество улучшений в configparser;
  • улучшен pdb (Python debugger);
  • множественные исправления, связанные с ошибками bytes/string;
  • множественные исправления для численных операций.

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

★★

Проверено: JB ()
Последнее исправление: Dendy (всего исправлений: 3)
Ответ на: комментарий от Binary

По поводу непринципиальности: ну сделали в тройке тип bytes, который заменил нынешний str, что в этом принципиально нового?

не-не-не, там всё серьёзно перелопатили и теперь чотко ясно где байты а где строки и нет больше проблем. Раньше были замечательные глюки когда были такие конструкции buf = buf + data когда посылаешь сначала юникод а потом строку. В результате str+unicode давал юникод и код падал по совсем неочевидным причинам в середине либы. Ну и таких примеров куча. Щас реально стало проще проги писать.

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

> Согласен. Однако, на переход джанго и твистеда на тройку чего-то не хватает этого.

Я уже писал почему, в случае веба - патамушта с WSGI пока ещё беда.

А твистед - он низкоуровневый достаточно, для него с байтами возюкаться логичнее.

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

Различия в синтаксисе и архитектуре у семантически похожих ЯП вполне естественны.

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

Какая разница, свое дело оно делает и не парит мозг
типа как «осознанным и добровольным выбором стиля».))

И что характерно, выбор таких штучек больше у языков непистоновых. ))
А в пистоне это проходит на уровне морали и «добра и зла».

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

> Под табами имелись в виду пробельные символы вообще.

Ну так выражайтесь корректнее, не путайте тёплое с мягким.

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

> Раньше были замечательные глюки когда были такие конструкции buf = buf + data когда посылаешь сначала юникод а потом строку. В результате str+unicode давал юникод и код падал по совсем неочевидным причинам в середине либы.

+100500

Юникод-фашизм - очень правильное дело.

Кто ещё не читал - сюда: http://live.julik.nl/2005/12/composition-normalization-and-morons

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

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

Можно.

Но при этом собственно код приложения будет уже на питоне написан.

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

> Какая разница, свое дело оно делает и не парит мозг

«Any color you like as long as it's black» (с)

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

> И что характерно, выбор таких штучек больше у языков непистоновых. ))

И, что характерно, никто нихрена этим не пользуется и знай себе плодят кашу.

А в пистоне это проходит на уровне морали и «добра и зла».

Да. Именно из-за такого рода особенностей код на питоне и обладает легендарной читабельностью и поддерживаемостью.

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

В tcl уже больше 10 лет решены все проблемы с юникодом, а тут все хлюпает и дискусы ...
Ну прямо цирк какой-то. Все что-то развивают и развивают.

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

не путайте тёплое с мягким.

Это не моё сообщение было. И вообще я на светлой стороне. А сделать неверный вывод можно было только если совсем не знать собеседника и подозревать в нем полнейшего пионера.

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

Наглое враньё. Плывёёёт, ещё как. Особенно когда особо продвинутые граждане напихают мешанину из табов и пробелов.

Второе (мешанина) - не стоит такое допускать в своем коде. Первое - не верю (с), так же как и все представители церкви табистов...

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

> А сделать неверный вывод можно было только если совсем не знать собеседника и подозревать в нем полнейшего пионера.

Да я могу понять косноязычных людей, не волнуйтесь. Но всё-таки им следует выражаться ясней. А то мало ли какие проблемы возникнут.

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

Но при этом собственно код приложения будет уже на питоне написан.

Это код библиотеки не на питоне, а само приложение питоновское. Но я не вижу в этом никаких проблем, большинство библиотек всё равно на C написано(для всех ЯП, не только для питона), а для самих ЯП уже просто биндинги делаются.

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

Если в linux не насувается гора из дерьма на ЯП и школники его не дрючат круглые сутки, то такой ЯП уже неуловим. OK, это устраивает.

elipse ★★★
()
Ответ на: комментарий от I-Love-Microsoft

> Второе (мешанина) - не стоит такое допускать в своем коде.

Эхехе, если бы я жил в счастливой стране эльфов, где платили бы исключительно за возню со СВОИМ кодом - я был бы счастливый человек. Но увы.

Первое - не верю (с), так же как и все представители церкви табистов...

Ну я атеист, мои апостериорные аргументы супротив верунов бессильны. Но факт остаётся фактом - предсказать заранее, как табы отобразятся в той или иной софтине, решительно невозможно.

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

> Это код библиотеки не на питоне, а само приложение питоновское. Но я не вижу в этом никаких проблем, большинство библиотек всё равно на C написано(для всех ЯП, не только для питона), а для самих ЯП уже просто биндинги делаются.

Ну дык я про это и говорю.

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

> предсказать заранее, как табы отобразятся в той или иной софтине, решительно невозможно.

А не надо пользоваться непредсказуемым софтом.

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

Ты считаешь питон конкурентом тиклю, занимающим одну нишу?
Если нет, то зачем ты что-то хочешь тут доказать?

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

> Если в linux не насувается гора из дерьма на ЯП и школники его не дрючат круглые сутки, то такой ЯП уже неуловим. OK, это устраивает.

Баттхёрт пользователя «незаслуженно забытого концептуального языка» детектед.

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

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

> Если нет, то зачем ты что-то хочешь тут доказать?

Пепел Ойстерхаута стучит в его сердце.

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

>ну о том и речь, что в пистоне отступы возвели в ранг синтаксиса. это убого.

Занятно, но возможность обозначения блоков кода через отступы (т.н. двухмерный синтаксис) есть и в hasekell (во вском случае там есть такая возможность, причем используется она в подавляющем большинтсве случаев). Однако hasekell за это никто почему-то не критикует.

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

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

> Однако hasekell за это никто почему-то не критикует.

Нууу хаскелл есть за что покритиковать и без этого :]

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

>> А не надо пользоваться непредсказуемым софтом.

Дайте мне билет до страны эльфов

Зачем? По секретным эльфийским технологим сделаны (список не претендует на полноту) mcedit, emacs и Eclipse. Просто пользуйся ими.

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

О, опять индусокодеры набежали! Что, трудности с пониманием всех заказчиков одновременно из франции и наглии? Ну а то, бенгалийский с сухили не перепутать, тут без UTF8 никуда. Особенно трудно космополитам, хоть плачь, кроме UTF32 никуда.

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

> Я даже не знаю, может версиями помериться?)

Попробуем. Но на альте похожая ситуация

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

> Сколько пишу на питоне, никогда с этим проблем не испытывал.

Странно. Это у нас основная проблема

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

> Зачем? По секретным эльфийским технологим сделаны (список не претендует на полноту) mcedit, emacs и Eclipse. Просто пользуйся ими.

mcedit ничего не умеет, емакс - для мутантов, эклипса страшновата и глючна.

Нафиг, нафиг.

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

Если разработчики языка раньше не проектировали стандарт а делали «сойдёт», то какой адекватный товарищ будет надеяться на то, что впредь авторы языка будут думать __перед__ тем как делать? У них там комитет вмеяемый вообще?

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

> Если разработчики языка раньше не проектировали стандарт а делали «сойдёт»

Это вы про похапе, перл или си?

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

Но факт остаётся фактом - предсказать заранее, как табы отобразятся в той или иной софтине, решительно невозможно.

Если в коде исключительно табы без вредных примесей пробелов, как оно может отобразиться не так? Примеры подобных редакторов в студию!

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от alx_me

А теперь выдели из этого высера смысловую нагрузку, пожалуйста.

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

>Зачем? По секретным эльфийским технологим сделаны (список не претендует на полноту) mcedit, emacs и Eclipse. Просто пользуйся ими.

Все в кучу. Кровь, г#-но, песок и сахар. А у каждого из них свои недостатки. Или, раз пошла такая пьянка, чем Eric (или чего попроще, скажем SciTE) плох?

Kostafey
()
Ответ на: комментарий от I-Love-Microsoft

> Если в коде исключительно табы без вредных примесей пробелов, как оно может отобразиться не так?

1) оно может расползтись на 8 пробелов, если редактор не был предварительно настроен. В наш прогрессивный век, когда приходится работать на массе машин, совет «а вы настройте всё заранее» не особо канает.

2) если вы код вставите в HTML или другое какое текстовое поле - табы, скорее всего, тупо проглотятся

3) если вы используете сторонний инструмент типа смотрелки диффов - с табами может случиться что угодно

Короче, основная мысль: код должен выглядеть всегда и везде одинаково.

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

> mcedit ничего не умеет, емакс - для мутантов, эклипса страшновата и глючна.

А это не ты Geany советовал? Если да, то бугага.

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

>> Зачем? По секретным эльфийским технологим сделаны (список не претендует на полноту) mcedit, emacs и Eclipse. Просто пользуйся ими.

Все в кучу. Кровь, г#-но, песок и сахар.

Ты кто, чудо?

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

Питон не конкурент тиклю.
Прошло 20 лет, у пистона все обсуждается юникод и стабильность и т.д., а «не ломать язык некоторое время» проходит как отличная идея.

Если нет, то зачем ты что-то хочешь тут доказать?


За 20 лет язык должен быть стабильным или уйти нафиг из системных ЯП в linux.

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

> За 20 лет язык должен быть стабильным или уйти нафиг из системных ЯП в linux.

Не уходит же, а продолжает развиваться и расширятся. Парадокс. :)
В общем, нет смысла доказывать правильность разных парадигм развития. :)

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

> Это я про питон. Си и перл кошерны в этом плане.

Да вы бредите, молодой человек.

Си - абсолютно мутантский, малологичный и непродуманный язык. Такие вещи как if (a=b), ++/--, опциональные фигурные скобки и отдельные .h-файлы попили кучу крови программистам за долгие годы.

Перл - ещё больший кошмар, язык лишён логики абсолютно. Один только list flattening чего стоит. Вы читали интервью с Ларри Уоллом в «Masterminds of Programming»? Там познавательно: даже он сам признаётся в полной дурости раз пять.

По сравнению с ними Python - триумф продуманности.

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

Отлично пишет человек, хотя и тварь редкая, ещё и космополит. Сказав А надо говорить и Б. Начав с UTF-8 вы всё равно придёте к необходимости UTF-32. А пока у нас не коммунизм и шрифтов со всем мировым наследием крякозябр нет, я буду пользоваться koi8-r. А те кто плюют на локаль те сволочи и тунеядцы. Если я написал ru_RU.koi8-r, то извольте исполнять, а не называть это deprecated. Ведь всё равно без локали ничего работать не будет. Юникодов более 16 видов. Свои внутренние данные храните хоть вверх ногами, а мои данные извольте брать как вам дают.

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