Обновить
488.93

Python *

Высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Выпущена новая версия IronPython 2.7 Alpha

Время на прочтение1 мин
Количество просмотров1.5K
ironpython-logo

Вслед за обновлением IronRuby, обновилась и реализация языка Python для .NETIronPython. В новой версии IronPython 2.7 Alpha добавлена предварительная поддержка CPython 2.7 и проведены другие изменения:
  • добавлена интеграция с Visual Studio (набор IronPython Tools for Visual Studio);
  • расширена документация по CPython 2.7 с полезной информацией относящейся к IronPython;
  • добавлены модули mmap и signal;
  • произведено некоторое количество улучшений производительности и исправлений ошибок;
  • лицензия изменена с MSPL на Apache License, Version 2.0;
  • новая версия требует .NET 4.0 и Silverlight 4.0.
Загрузить пакет установки новой версии IronPython 2.7 можно по этой ссылке.

Посетите официальный сайт проекта по адресу http://www.ironpython.net/.

Простое наложение 2-х изображений

Время на прочтение3 мин
Количество просмотров33K
Это занимательный рассказ о том, как одно изображение накладывается на другое. Если вы занимались растровой графикой, писали игры или графические редакторы, вы врядли найдете в статье что-то для себя. Всем остальным, надеюсь, будет интересно узнать, что эта задача не такая тривиальная, как кажется на первый взгляд.

Итак, у нас 2 картинки в формате RGBA (т.е. 3 цвета + альфаканал):
Читать дальше →

Вышел Python 2.7

Время на прочтение1 мин
Количество просмотров4.9K
logoВ пятницу совершенно незаметно подкрался релиз python версии 2.7. Разработчики обещают, что это будет последний релиз ветки 2.x, поддерживаемой параллельно с веткой 3.x. В версии 2.7 к нашим услугам многочисленные улучшения синтаксиса, новый модуль изучения параметров командной строки, значительные улучшения в модуле юнит тестов и обновление библиотеки ElementTree, ответственной за работу с XML. Более подробно ознакомиться с изменениями и скачать последнюю версию можно на официальном сайте.

Разработчик научных пакетов SciPy/NumPy выпустит их на .NET/IronPython

Время на прочтение1 мин
Количество просмотров1.8K
Компания Enthought, Inc. заявила в своем пресс-релизе (pdf) о намерении выпустить библиотеки SciPy и NumPy, предлагающие инструменты для научных вычислений на языке Python, для платформы .NET.

SciPy и NumPy – это пакет высокопроизводительных статистических и числовых инструментов для языка Python. Они используются в основном для быстрой обработки данных и анализа в научных приложениях. У обоих инструментов есть большое opensource-сообщество, которое расширяет и улучшает их.

“Мы очень рады предложить мощь наших инструментов для новой группы пользователей на платформе .NET” – сказал Тревис Олифант (Travis Oliphant), президент Enthought в своем обращении на мероприятии SciPy 2010, которое проходило в городе Остин, штат Техас.

Релиз PyPy 1.3

Время на прочтение1 мин
Количество просмотров889
PyPy это экспериментальная реализация Python на языке RPython — подмножестве языка Python. Особенностями проекта является наличие JIT компилятора и возможности оттранслировать код интерпретатора в С, .Net и Java версии.

Главное нововведение версии 1.3 — поддержка С расширений СPython. Расширения не являются бинарно-совместимыми, поэтому для использования из PyPy их придется пересобрать. Не удивляйтесь если ваше любимое расширение не соберется — поддержка cpyext находится в альфа стадии и существенная часть API CPython еще не реализована. В этом случае разработчики предлагают закатать рукава и реализовать их самостоятельно.

Кроме того в релиз вошли множественные улучшения jit компилятора, в частности серьезно увеличена скорость компиляции, багфиксы и проч.

Хотя проект еще далек от готовности, скорость развития продолжает радовать — особенно на фоне того, что об Unladen Swallow в последнее время мало слышно.

Подозреваю что в следующих релизах мы увидим 64-битную версию PyPy и поддержку jit для расширений С — как результат двух проектов которые реализуются в рамка GSoC в этом году.

Собственно новость
Страница для скачивания

Python и Twisted — Заметки о параллельной обработке данных (мультипроцессности)

Время на прочтение5 мин
Количество просмотров35K
imageTwisted — это фреймворк на Python для разработки сетевых приложений, который среди многих других применений, может быть использован и для параллельной обработки данных — мультипроцессности. Это замечательно, но мне пришлось попотеть для того, чтобы найти то, что мне нужно.

Читать дальше →

Полное покрытие кода

Время на прочтение10 мин
Количество просмотров20K
Нужно ли делать полное покрытие кода тестами — довольно-таки частая и неоднозначная тема при обсуждении юнит-тестирования. Хотя большинство разработчиков склоняются к тому, что делать его не надо, что это неэффективно и бесполезно, я придерживаюсь противоположного мнения (по-крайней мере, при разработке на Python). В данной статье я приведу пример, как делать полное покрытие кода, и опишу недостатки и преимущества полного покрытия на основе своего опыта разработки.
Читать дальше →

Распространение приложений на twisted

Время на прочтение5 мин
Количество просмотров6.1K
imageМоя работа — создание различных приложений на Twisted для работы с многочисленными веб-сервисами. В отличие от проектов на TurboGears, которые я распространяю как eggs с помощью easy_install (через setuptools) у меня не было удобного способа «выкатить» проекты на Twisted.

До этого момента.
Читать дальше →

Python Tips, Tricks, and Hacks (часть 4, заключительная)

Время на прочтение5 мин
Количество просмотров21K
Это заключительная часть перевода статьи. Декораторы, switch для функций, некоторая информация о классах.
Читать дальше →

Слияние и поглощение

Время на прочтение2 мин
Количество просмотров1.5K
Тихо и незаметно возникло желание написать ещё один пост про Unladen Swallow и опять начать его словами «тихо и незаметно». Причём в данном случае эти слова будут намного более уместны…

Мы все скучаем без новостей о «ласточке». На главной странице проекта в последних новостях сообщается про выпуск очередного ежеквартального релиза — 2009Q3, октябрь прошлого года. На Хабре пробегают новости от самих разработчиков, вызывающие сомнения в перспективах использования Python-а внутри Google-а, и, соответственно, в заинтересованности Google-а в «ласточке». Всё плохо и безрадостно, казалось бы, не видать нам годного JIT-компилятора в Python-е…

Ан нет. Сегодня, случайно зайдя на канал #unladenswallow на OFTC, с меня слетела шляпа меня встретила надпись: PEP 3146 approved! А этот самый PEP 3146 — это, между прочим, описание плана интеграции Unladen Swallow с CPython, имеющее теперь статус Accepted/Standards Track.
Читать дальше →

Wiki для Python-программистов

Время на прочтение1 мин
Количество просмотров5.4K
Многие из вас, наверное, уже слышали о ресурсе python.su. После долгого застоя мы готовы представить вам один из новых разделов нашего сайта http://wiki.python.su, в котором мы постараемся сосредоточить ваше внимание на переводах различных книг и документаций, так или иначе связанных с Python.
Читать дальше →

Pylons. Альтернатива routing.py

Время на прочтение5 мин
Количество просмотров1.8K
Доброе время суток. Не так давно мы начали писать большой проект на Pylons и одно из главных требований было быстрое присоединение и удаление контролеров без изменений в routing.py. Один из наших работников уже сталкивался с подобным и сделал данную функциональность через плагины. Но, как мне показалось, решение было достаточно громоздким и его тяжело было переносить в будущем из проекта в проект.

Т.к. я в прошлом имел дело с Catalyst (Perl MVC framework), да и нравилось мне, что к каждому методу можно было руками дописать URL. Собственно решил написать нечто похожее.
Читать дальше →

Ближайшие события

Ещё одно Python сообщество

Время на прочтение1 мин
Количество просмотров7K
Меня давно интриговал вопрос, почему в рунете нет приличного портала по языку программирования python? Вроде сделать не сложно, людей знающих язык огромное количество, но не смотря ни на что, сайтов о питоне единицы, да и те которые были, строились на PHP. Единственный сайт который изменился с тех пор, это форум Сагалаева, остальные либо забросили свои сайты, либо вообще отказались от идеи порталов, как от бесперспективного направления. Но как говорится, свято место пусто не бывает, и я решил заполнить эту нишу своим детищем: http://pyplanet.org/
Читать дальше →

Сравнение нагрузки — PyCurl vs HTTPClientFactory+Deferred

Время на прочтение1 мин
Количество просмотров2.2K
В процессе разработки одного проекта на Python+Twisted (распределителя СМС запросов) пришлось переписать вызов URL различных сервисов с разных серверов c блокирующего вызова через PyCurl на неблокирующий (client.HTTPClientFactory + deferred). Чтобы иметь перед глазами реальные данные, решил дать нагрузку и посмотреть на результаты

Читать дальше →

Bing + Python, поиск изображений

Время на прочтение11 мин
Количество просмотров22K
Bing+PythonИногда бывает нужно набрать картинок по определённой тематике, чтобы иметь возможность выбрать из существующего набора нужную и т.д. Текущие поисковики дают такую возможность, но надо открывать браузер, переходить по страницам, работать мышкой и, вообщем, заниматься этим. Хотелось бы иметь консольную утилиту «запустил и забыл» для набора нужных картинок. Рассматривается Bing API, начало работы на Python и их связка для поиска изображений.
Читать дальше →

Визуализация активности сайта с помощью codeswarm

Время на прочтение1 мин
Количество просмотров1.1K

Codeswarm


эта утилита визуализирует историю комитов репозитория. Она умеет сохранять кадры в отдельные файлы, которые потом можно объединить в видео с помощью, например mencoder. Для этого codeswarm нужен файл в формате xml с активностью в репозитории. Вместе с codeswarm идет скрипт, который конвертирует логи из svn, cvs и др. в собственный.

Access log


Получается, codeswarm без разницы что визуализировать, программе нужен лишь правильный xml. Поэтому я подумал, что можно применить эту утилиту для генерации видео активности на сайте. Для этого был написан конвертор access лога апача или nginx в event log. За основу был взят родной конвертор.
Читать дальше →

Code Like a Pythonista: Idiomatic Python (part2)

Время на прочтение11 мин
Количество просмотров18K
Kaa, the Python


После небольшого перерыва представляю заключительную часть перевода статьи Дэвида Гуджера «Пиши код, как настоящий Питонист: идиоматика Python»


Ссылки на первую и вторую части.


Еще раз подчеркну, автор в этой статье не открывает Америку, большинство Питонистов не найдут в ней какой-то «особой магии». Но довольно подробно перечисляются методологии использования и выбора различных конструкций в Python с точки зрения удобочитаемости и близости к идеологии PEP8.
В некоторых местах в авторской статье отсутствуют примеры исходных кодов. Разумеется, оставил как есть, придумывать свои не стал, в принципе должно быть понятно, что имел в виду автор.

Читать дальше →

Python 2.7 beta 1

Время на прочтение1 мин
Количество просмотров758
image

Стала доступна для скачивания первая бета ветки 2.7 с рядом нововведений, которые многим напомнят последний релиз ветки 3.1.

  • Новый тип — упорядоченный словарь
  • Новый функционал в юнит-тестах
  • Ускорение модуля io
  • Автоматическая нумерация полей в методе str.format()
  • Усовершенствование представления типа float
  • Ttk поддержка Tkinter
  • Объект memoryview из ветки 3.х
  • Set literals
  • Dictionary views
  • Новый синтаксис вложенных структур с оператором with
  • Модуль sysconfig



Change Log
Whats New in Python 2.7

via Python.org

PyPy научился напрямую загружать расширения CPython'а

Время на прочтение2 мин
Количество просмотров2K
PyPy теперь умеет загружать и запускать расширения CPython'а (то есть, .pyd и .so файлы) напрямую, при помощи новой подсистемы, которая называется CPyExt. В отличие от решения, представленного в другом блог-посте (в котором модули расширения типа numpy запускались на CPython и проксировались через TCP), новое решение больше не требует запущенного CPython. Мы пока ещё не достигли полной бинарной совместимости (как Ironclad), но, в большинстве случаев, достаточно просто перекомпилировать расширение.

Единственное требование — необходимые функции C API из CPython должны быть реализованы в PyPy. Если вы пользователь или автор модуля, и вам не хватает некоторых функций в PyPy, мы приглашаем вас их реализовать. Уже довольно много людей (включая много новых контрибьюторов) уже включились в разработку и реализовали некоторые функции для того, чтоб их любимые модули заработали. В конце поста — список имён.

Кстати о скорости. Несмотря на то, что существуют накладные расходы на запуск этих модулей, когда мы запускаем движок регулярных выражений из CPython (_sre.so) и проходим бенчмарк spambayes из набора бенчмарков Unladen Swallow (см speed.pypy.org), то получаем значительное ускорение: тест стал вдвое быстрее по сравнению с движком регулярок, встроенным в PyPy. Из закона Амдала следует, что _sre.so должен работать в несколько раз быстрее, чем встроенный движок.

В данный момент идёт работа над PIL и другими модулями. Например, поддержка distutils уже почти завершена. И если вы хотите участвовать в этом или получить больше информации о том, как использовать эту новую возможность, заходите на наш IRC-канал #pypy на freenode.

Участники разработки CPyExt:

Вклад авторов