Как стать автором
Поиск
Написать публикацию
Обновить
395.7

Python *

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

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

Простое наложение 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 мин
Количество просмотров887
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 мин
Количество просмотров21K
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 мин
Количество просмотров756
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:

Книга Gray Hat Python. Глава 2. Отладчики и устройство отладчика

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

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

Сказать по-правде, на Python в этой главе написано ровно 4 строчки. Но она все равно будет очень полезна как новичкам в программировании, так и Python-программистам, ибо рассказывает об устройстве отладчиков.

Перевод пока местами просто ужасен, и в этом исключительно моя вина за пока что отсутствующим опытом внятного перевода некоторых технических аспектов. Хотя на первый взгляд, все вроде должно быть понятно. Если знающие «матчасть» программисты мне помогут, буду очень рад. Особенно в плане терминов.

И так, предлагаю ознакомится тут.

Так же предлагаю ознакомится с
Введением
Глава 1. Настройка вашего рабочего окружения.
Как всегда, жду отзывов и критики.

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