LINUX.ORG.RU

Python 2.7

 ,


0

0

3 июля 2010 вышло обновление Python 2.x, в котором были добавлены возможности, ранее присутствовавшие только в ветке 3.x, а также другие улучшения:

  • Новый тип — упорядоченный словарь
  • unittest обзавелся новыми методами assert и может пропускать (по требованию, естественно) тесты
  • значительно ускорена работа модуля IO
  • автоматическая нумерация полей в методе str.format()
  • Улучшения представления repr для типа float, как в Python 3
  • Поддержка Tile для TkInter
  • Объект memoryview портирован обратно из Python 3
  • литералы для множеств ({a, b, c})
  • comprehensions для множеств и словарей
  • Dictionary views — способ представления фрагмента словаря без копирования
  • Новый синтаксис для вложенных операторов with
  • Новый модуль sysconfig

>>> Анонс релиза на оф. сайте и загрузка

★★★★★

Проверено: Shaman007 ()

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

> Вранье. 1.9 окончательно утоптал змеюку, приблизительно так: http://po-ru.com/images/ruby-propaganda-small.png

Да, картинка сойдет в качестве веского довода.

http://github.com/languages

Ага, похрен, что среди рубистов очень популярен git, а большинство программистов на python используют mergurial. Думаю, что на bitbucket статистика будет сильно другой. И да, где рубёвые аналоги scipy, matplotlib, nltk, например?

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

Давай, озвучь критерий нормальности.

Тебе завидно, что у ruby+ror в вебе конкурент только php и жаба, а питону до них по популярности как до Китая пешкодралом?

Ага, популярность критерий «конкурентноспособности»? Объективно, чем django хуже ror?

В общем фанаты такие фанаты (фанаты чего бы то ни было), противно, честное слово.

satanic-mechanic ()
Ответ на: комментарий от pythonist

>Можно и на PHP скрипты автоматизации писать, но это только для курсовых подойдёт.

Если бы ты не упомянул руби, это может и было бы правильно (хотя и возможно). А так это вброс. Либо ты таки не знаешь, что рельсы != руби.

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

Кому не хватало анонимных функций в Питоне?

x = {«a»: lambda y: y, «b»: lambda z: z}

x


{'a': <function <lambda> at 0x192230>, 'b': <function <lambda> at 0x1922b0>}

x[«a»]

<function <lambda> at 0x192230>

x[«a»](1)

1

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

> Давно на ЛОРе не было такого эпичнейшего провала...

Да.

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

Я веб в том сообщении даже не затрагивал. Бывают вещи и посерьёзнее блого-поделок.

Если бы ты не упомянул руби, это может и было бы правильно (хотя и возможно).

Буд-то на руби нельзя серверный скрипт для генерации HTML написать. Или без рельс молодые программисты мыслить не могут?

А так это вброс. Либо ты таки не знаешь, что рельсы != руби.

При чём тут фрэймворк? Речь ведь не шла о http://wiki.python.org/moin/WebFrameworks

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

По крайней мере у вас хватает смелости признать свою ошибку. Не часто такое бывает.

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

> Вы не поняли проблемы с табуляцией: допустим есть код вида...

Используй нормальный редактор и удивись, придется нажимать даже меньше клавиш, чем при использовании языка с вашими любимыми {}

satanic-mechanic ()
Ответ на: комментарий от pythonist

Эээ... и что? Лямбды можно хранить и в словарях, да.

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

>Понятно что в автокаде лисп, хотелось бы узнать какой от этого профит. Там вообще то много языков натыкано.

все они пришли позже.

Среди CAD программ. Не стоит сравнивать с майкой или гудини.

не хочу давить на мозоли, но майка в итоге продалась автодеску. Так что вопрос, кто главней уже не актуален.

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

>Многие пишут на старом C - какой ужас!

мелкие утилиты и куски кода почему нет?

Тренд последних лет - это дрот-нет.

это не тренд, а вызов православию. зло богато, но не пройдет.

Где эта эра? Разве что в академических бюджетных умах.

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

AVL2 ★★★★★ ()

Всегда нелюбил эту особенность:

>>> l = [lambda: i for i in xrange(10)]
>>> print l[0]()
9
ntp ()
Ответ на: комментарий от anonymous

> Да до того, как гугл стал пиарить питон, его использовали единицы.

Мы используем Питон издавна. Намного позже узнали что Гугль и Ютуб его используют тоже.

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

> Эээ... и что? Лямбды можно хранить и в словарях, да.

Очередной пример использования анонимных функций в Питоне. Словари просто в нагрузку.

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

Инновации зародились в руках инженеров, которым надо уже вчера сдавать проект. Читай историю С и прочих.

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

> внезапно, именно в академических бюджетных умах зародились все инновации нашего времени.

Даже если поверить слову «все», то зародившиеся академические хаскели и т.д. ещё должны пройти тест на рыночную прочность и удержаться на нём. Кто же против удачных и стабильных языков с хорошей поддержкой и кучей батареек? В реальности же у каждой инновации свой путь. Erlang вроде из телекоммуникационного бизнеса вышел.

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

Речь идёт об энтерпрайзе, а не ежедневно меняющихся блого-поделках на руби или пэхапэ.
Я веб в том сообщении даже не затрагивал.

ORLY?

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

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

> По теме: какое-то двоякое отношение к питону у меня. С одной стороны, он мне абсолютно ничем не нравится, даже антипатии больше. С другой - вполне себе язык, и даже писать на нём незазорно в некоторых случаях.

Доктор, что со мной?


Симптоматика схожа с профессиональной интуицией - не юзать Г, базирующееся на странноватых принципах. :)

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

А нет, ещё один пробился.

wikipedia > Erlang является одним из немногих функциональных языков программирования, которые совершили скачок из академических кругов в промышленность, в частности, производители телефонов и сетевого оборудования используют Erlang.

Заявленная доступность в кучу девяток - это интересно.

pythonist ()
Ответ на: Всегда нелюбил эту особенность: от ntp

Re: Всегда нелюбил эту особенность:

Ваша концепция убога, вы ничего не понимаете в концепциях.

Каждый, кто делает, чтобы круто, а не чтобы правильно и внятно - убог. ХОтя о чём я, это же лор, тут адеквата с прожектором не найдёшь, только детишки с жаждой огромного самовыражения.

anonymous ()
Ответ на: Re: Всегда нелюбил эту особенность: от anonymous

> Каждый, кто делает, чтобы круто, а не чтобы правильно и внятно - убог.

Да-да-да. Может заодно объясните почему

>>> {}[lambda: 1:1]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unhashable type

выдает TypeError, а не SyntaxError?

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

> ORLY?

Так и не нашёл слова веб.

Я тебе намекаю, что руби можно использовать как «десктопный» (скажем так) скриптовый язык

Кто же сомневался. И Perl, и PHP можно.

в отличии от пхп, у которого только одна ниша.

Кто-то может обидеться и сказать что у Руби только одна ниша - Рельсы.

И хотя на пхп и можно писать скрипты не для веб, практически это не приветствуется.

Видел кучу скриптов на практике. Многое даже работало. Если народ более ничего не знает, он пишет на том что знает везде где можно.

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

> Кто-то может обидеться и сказать что у Руби только одна ниша - Рельсы.

Слышите шаги и всхлипы? Это Розенталь, плача, встал и вышел из топика.

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

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

> TypeError, а не SyntaxError?

lambda: 1:1 - это объект «функция» (которая не выполнилась, а только описана), а обращение к значению словаря по ключу типа «функция» невозможно: runtime type error.

pythonist ()

<юмор>

RoR — замечательный фреймворк к замечательному языку. Только вот пытаюсь написать корпоративный портал, а всё время какой-то блог получается.

</юмор>

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

>Так и не нашёл слова веб.

Давно блогоподелки делают не на веб?

Кто-то может обидеться и сказать что у Руби только одна ниша - Рельсы.


Этот кто-то может оказаться неправ. Прошерсти по своим репам.

Видел кучу скриптов на практике. Многое даже работало. Если народ более ничего не знает, он пишет на том что знает везде где можно.


Так кто спорит. Многое из этого попало в репозитарии?

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

Это не йумор, это какое-то динозавровое боянище.

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

> Надоели уже со своими рельсами.

Точно.

У вашей винды тоже одна ниша - запускать краденый офис и косынку.

От моей винды и лицензионного офиса уже даже праха не осталось.

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

> lambda: 1:1 - это объект «функция»

>>> lambda: 1:1
  File "<stdin>", line 1
    lambda: 1:1
             ^
SyntaxError: invalid syntax

> обращение к значению словаря по ключу типа «функция» невозможно

>>> f = lambda: 1
>>> {f: 1}[f]
1

Мимо 2 из 2.

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

> Давно блогоподелки делают не на веб?

Вам лучше знать. Я этой тематикой и Руби не занимаюсь.

Прошерсти по своим репам.

Только Perl + Python. Ни одного Ruby + PHP.

Многое из этого попало в репозитарии?

Да. Даже неплохо оплачено было.

pythonist ()

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

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

>Вам лучше знать. Я этой тематикой и Руби не занимаюсь.

Т.е. просто так языком чешешь?

Только Perl + Python. Ни одного Ruby + PHP.


А ты ищи просто Ruby, а не Ruby + PHP. Sarcasm aside, а вот в Дебиане такие приложения есть, и не одно (и это не рельсы, да, хотя они тоже есть).

Да. Даже неплохо оплачено было.


Название программы и дистрибутива, в который она вошла, в студию.

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

>> Проще нажать n раз бэкспейс. На худой конец - Shift+Tab. Если у вас говно, а не текстовый редактор - смените, наконец. Рекомендуется Geany или SciTE.

Благодарю, за совет. Но если у вас говно, а не язык - смените, наконец. Рекомендуется что угодно, только не питон.

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

> lambda: 1:1 - это объект «функция»

Ух ты. И вправду, точек много было. Спать пора.

Мимо 2 из 2.

Супер.

А что же он тогда из интервала (от lambda: 1 до 1) хэш сумму сделать не может и ругается?

Ответ то хоть есть? :-)

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

> Т.е. просто так языком чешешь?

Ни в одной фирме не встречал Ruby. Веб студии используют для сайтиков часто PHP. Фирмы покрупнее этот детский сад игнорируют. Хобби сотрудников это не касается.

А ты ищи просто Ruby, а не Ruby + PHP.

Есть куча Дебианов со стандартной установкой. Ни на одном не найден ни Ruby, ни PHP, ни пакеты для них. Для Perl и Python есть.

Название программы и дистрибутива, в который она вошла, в студию.

Может ещё и список клиентов со стоимостью проектов привести? Не переживайте, все налоги заплачены.

Люди, пишущие скрипты автоматизации на PHP (не я), свои творения в репозитарии обшего назначения не сливают - это обычный корпоратив.

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

Чую на собеседовании много народу погорит :-)

Выражение {}[lambda: 1:1] сводится к {}[slice(start, stop)], где start - lambda, stop - 1, а slice - системный, редко используемый класс (кстати, аргументы start, stop и step могут иметь любой тип).

А вот у slice метод __hash__ кидает исключение (см slice_hash() в sliceobject.c)

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

> выдает TypeError, а не SyntaxError?

не может вычислить хэш синтаксической ошибки :-)))

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

Вернее к dict.__getkey__({}, slice(start, stop)), но, думаю, вы поняли.

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

> Выражение {}[lambda: 1:1] сводится к {}[slice(start, stop)], где start - lambda, stop - 1, а slice - системный, редко используемый класс (кстати, аргументы start, stop и step могут иметь любой тип).

Обалдеть! Хотя не понял почему это вдруг сводится к slice, если обращение идёт к словарю по значению ключа? Это ведь не {}[[lambda: 1:1]] (слайс в значении ключа).

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

[1:1] - это не создание объекта типа slice, это применение оператора subscript ни к чему, т.е. SyntaxError.

Оператор subscript может применяться только к чему-нибудь: object[start:stop:step]

Парсер его «внутренности» (то, что между []) автоматически преобразует к вызову конструктора slice.

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

>Ни в одной фирме не встречал Ruby. Веб студии

facepalm.bmp Не о том речь.

Есть куча Дебианов со стандартной установкой. Ни на одном не найден ни Ruby, ни PHP, ни пакеты для них.


Breaking news! Дебиан большой.

Может ещё и список клиентов со стоимостью проектов привести?


Значит таки наколенная поделка, которая была никому не нужна, кроме вас, и в дистрибутив не вошла. Да, может вам она была нужна, но это уже ваши сложности, кто ж запрещает.

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

Думал уже что как раз subscript для словаря и вызывается, а тут такое.

Страшно ложиться спать. Пожалейте кандидадов на собеседовании.

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

Дебиан большой.


Ну в Винде тоже можно всякого наустанавливать потом. Но кто же это ставит?

Учитывая апт-кэш:
perl: 2043
python: 1172
ruby: 546
php: 359

Значит таки наколенная поделка


Именно так.

которая была никому не нужна, кроме вас


Мне тоже была не нужна. Писал знаток PHP.

и в дистрибутив не вошла.


Там им не место: частный случай + лицензия.

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

>Ну в Винде тоже можно всякого наустанавливать потом. Но кто же это ставит?

У винды уже появился репозитарий? А то, что можно доставить с диска венды это просто смешно. В отличии от.

Deleted ()

> unittest обзавелся новыми методами assert и может пропускать (по требованию, естественно) тесты

Жгут. Я был уверен, что там это уже давно by default.

ufw ()

Как там с юникодом по умолчанию? Прикрутили?

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

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

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

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

Sylvia> для меня главный критерий новости - оперативность

Оперативность в ущерб качеству и имиджу ресурса. Впрочем, всё это уже высказали выше.

Я даже не знаю, кого надо сильнее пинать, но почему-то никто тут не кричит «ШВИМ».

Так что... ШВИМ!!!

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