Обновить
1024K+

Python *

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

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

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

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

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

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

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

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

Время на прочтение5 мин
Охват и читатели6.3K
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.5K
Многие из вас, наверное, уже слышали о ресурсе python.su. После долгого застоя мы готовы представить вам один из новых разделов нашего сайта http://wiki.python.su, в котором мы постараемся сосредоточить ваше внимание на переводах различных книг и документаций, так или иначе связанных с Python.
Читать дальше →

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

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

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

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

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

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

Время на прочтение1 мин
Охват и читатели2.3K
В процессе разработки одного проекта на 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 мин
Охват и читатели19K
Kaa, the Python


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


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


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

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

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

Python 2.7 beta 1

Время на прочтение1 мин
Охват и читатели805
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 мин
Охват и читатели2.1K
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.6K
image

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

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

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

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

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

Code Like a Pythonista: Idiomatic Python (part1)

Время на прочтение9 мин
Охват и читатели27K
Kaa, the Python


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

Начало и окончание перевода.


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

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

Всё, что Вы хотели знать о слайсах

Время на прочтение3 мин
Охват и читатели97K
Маленькое вступление. Уверен, что каждый, кто использовал питон некоторое время, полюбил выражения в прямоугольных скобочках. В этой статье я хочу от «а» до «я» рассказать о срезах. Для начала немного о терминологии: в английском языке их называют «slice». Я буду называть их то «слайсами», то «срезами», как в моем понимании этого слова. Будем все учиться на примерах. Для меня, такой метод был бы самым удобным, быстрым и простым.
Разве есть, что-то, чего я не знаю про эти скобочки?

Code Like a Pythonista: Idiomatic Python (part0)

Время на прочтение12 мин
Охват и читатели29K
Kaa, the Python
От переводчика:

Я только начал изучать Python. С самого первого знакомства язык порадовал симпатичными конструкциями и синтаксически-гарантированной удобностью к чтению и пониманию кода.
В процессе освоения, при написании своего кода, бывает, сомневаюсь в правильности выбранных способов с точки зрения Python-way ( PEP 8 — Style Guide for Python Code, если угодно). Для вникания в идеологию программирования, в Python-сообществе кроме исчерпывающей документации, ко всеобщей радости, накоплено уже немало вспомогательных материалов, таких как статья Python Tips, Tricks, and Hacks, перевод которой недавно появился на Хабре
Мне понравилась статья Дэвида Гуджера «Пиши код, как настоящий Питонист: идиоматика Python» (David Goodger «Code Like a Pythonista: Idiomatic Python»). Для лучшего её усвоения решил оформить (в силу умения) полноценный перевод, потом показалось здравой идеей поделиться с Хабром.
Пока работал над переводом, пришло понимание, что статья существенно больше, чем показалась при прочтении ее в оригинале, поэтому постить буду частями, чтобы не выпасть из формата Хабра-статьи.
Продолжение и окончание перевода.

are you ready?

Книга Gray Hat Python

Время на прочтение3 мин
Охват и читатели22K
image

Уважаемое Хабрсообщество и все интересующиеся языком программирования Python. Я начал переводить весьма интересную книгу Gray Hat Python. Правда, пока я перевел лишь предисловие и первую главу. Начал переводить для себя (поэтому немного коряво), но все таки решил, что нужно делиться. :)

И так предоставим слово автору.
Читать дальше →