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

Python *

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

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

Введение в pygtk/gtkbuilder: пишем калькулятор

Время на прочтение3 мин
Количество просмотров7.1K
Разберем создание интерфейса на pygtk на примере самого примитивного калькулятора. Много картинок, немного кода.
gtkbuilder наиболее прогрессивный формат описания gtk интерфейса в xml,
если вы ранее использовали libglade, вы можете сконфертировать .glade файл в новый формат командой libglade-convert
Читать дальше →

Немного про py2exe

Время на прочтение4 мин
Количество просмотров128K
Есть такое приложение. Называется py2exe. Оно позволяет упаковать, сконвертировать программу на python в exe файл (ну, точнее, exe и еще кучку других). Зачем оно все надо? Ну, далеко не у всех пользователей windows установлен интерпретатор python с нужными библиотеками. А вот упакованная программа в идеале должна запуститься на любой windows-машине.
Читать дальше

Пишем игру Реверси на Python + PyQt4

Время на прочтение6 мин
Количество просмотров16K
Задали нам как-то написать небольшой проект — игру Реверси.
А так как сейчас я изучаю Python, решил писать на нем. Вместе с графической библиотекой PyQt4.
Ну так за чем же дело встало? Создаем SVN и вперед! (Переехали на Github)

Вот такое чудо у меня получилось:
Скриншот игры
Читать дальше

Habra-colorer — скрипт для раскраски вашего хабракода из подручных средств

Время на прочтение4 мин
Количество просмотров1.6K
Начав писать топик про мои извращения с TeX-ом понял, что очень недостаёт нормальной подсветки синтаксиса. Гугление по Хабру и окрестностям навело на пару редакторов, которые у меня не заработали и описание подрихтованного formatter-а для pygments.
Решив «а чем я хуже», набросал «на коленке» скрипт на python-е, который мне код-то и раскрашивает.
Читать дальше →

Python Tips, Tricks, and Hacks (часть 2)

Время на прочтение6 мин
Количество просмотров134K
Содержание

Списки. Свёртка списка (reduce). Прохождение по списку (range, xrange и enumerate). Проверка всех элементов списка на выполнение условия (all и any). Группировка элементов нескольких списков (zip). Еще несколько операторов для работы со списками. Продвинутые логические операции с типом set.
Словари. Создание словаря с помощью именованных аргументов. Преобразование словаря в список и обратно. «Dictionary Comprehensions».
Читать дальше →

Отладчик регулярок pyRoge

Время на прочтение7 мин
Количество просмотров768
Привет, %username%, если ты тоже страдаешь от постоянных проблем с набиранием регулярных выражений в питоне — тебе сюда!
Читать дальше →

Сортировка изображений по разрешению с помощью Python и PIL

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

Захотелось зарегистрироваться на Хабре, но так как знаниями особо не блещу, а аудитория тут как раз наоборот, решил попробовать выложить скрипт на питоне, который написал по просьбе знакомого за бутылку 7апа :) Мне скриптик так же помог упорядочить свалку картинок ~15гб.

Скрипт проходит по директории и создает в ней папки вида ШиринахВысота и пихает туда соответствующие по разрешению изображения.

P.S. Ошибок не совершает тот, кто ничего не делает.

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

Python: советы, уловки, хаки (часть 1)

Время на прочтение8 мин
Количество просмотров265K
Предлагаю читателям «Хабрахабра» перевод статьи «Python Tips, Tricks, and Hacks». Статья будет полезна на начальном и среднем этапах изучения Python.

Хотите писать более лаконичный и читаемый код? Вы хотите уместить как можно больше смысла в одно выражение? Считаете, что прочитать о нескольких уловках лучше, чем провести остаток жизни за чтением документации? Вы обратились по адресу. Мы начнем с маленьких уловок, которые вы уже могли встретить, если немного работали с Python. Но я обещаю, что ближе к концу статьи вас ожидает больше безумных вещей.

Содержание

1. Маленькие уловки. Четыре типа кавычек. Правдивость различных объектов. Проверка на вхождение подстроки. Красивый вывод списка. Целочисленное деление и деление с плавающей точкой. Лямбда-функции.
2. Списки. Генераторы списков и выражения-генераторы.
Читать дальше →

Как устроен GIL в Python

Время на прочтение6 мин
Количество просмотров128K
Почему после распараллеливания выполнение вашей программы может замедлиться вдвое?
Почему после создания потока перестает работать Ctrl-C?
Представляю вашему вниманию перевод статьи David Beazley «Inside the Python GIL». В ней рассматриваются некоторые тонкости работы потоков и обработки сигналов в Python.

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

Be Pythonic

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

От переводчика


Представляю вашему внимаю перевод статьи Shalabh Chaturvedi «Be Pythonic», рекомендованной в этом топике. Если мое начинание будет поддержано, планирую также перевести две остальные упомянутые там статьи этого автора.

Вступление


Эта статья предназначена для новичков в Python.

При переходе с одного языка на другой некоторые вещи для вас могут остаться неизвестными (см. Transfer of Learning). То, что вам известно о других языках, может быть не всегда полезным в Python. Эта статья содержит некоторые используемые в Python идиомы, которые мне особенно нравятся. Я надеюсь, читатели найдут их полезными для овладения языком.
Читать дальше →

Материалы продвинутого уровня по Питону

Время на прочтение5 мин
Количество просмотров46K
PythonВ мире все примерно распределяется в соответствии с принципом Паретто. Меньшая часть — богатые, большая часть — бедные (читающий, ты входишь в золотой миллиард). Тоже касается и материалов о программировании. Порой очень сложно найти хоть что-нибудь не начального уровня.

После прочтения Dive into Python или подобной ей и ознакомления с документацией возникает вопрос, а что читать дальше? Можно обратиться к списку книг на python.org. Там есть раздел Advanced Books, но в нем всего лишь 6 книг (седьмая не выходила), и только одну я бы назвал по-настоящему стоящей.

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

Ниже собраны сложные материлы про Питон, его устройство и возможности. Все на английском (грех, не знать технический английский). Про Dive into Python я слукавил. Большинство приведенных материалов требуют хорошее знание Питона и наличие опыта программирования на нем.

Подробнее

Django в неблокирующем стиле, или в погоне за Священным Граалем

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

Присказка


При чтении о Twisted, Tornado, Node.js, у многих python-программистов возникает вопрос — «а вот если взять, и переписать Django в неблокирующем стиле?». Обычный ответ на этот вопрос — нет, не дождетесь. И правда, чтобы переписать целый фреймворк в макаронно-колбечном стиле, надо очень много сил, и большой заряд энтузиазма. Писать с колбеками, очень сомнительное удовольствие.

Так бы и было, но как я писал в своей прошлой заметке, есть в python-мире greenlet-ы, которые легким движением руки помогают скрыть от программиста все эти асинхронные моменты, до определенной степени. В момент написания той заметки, к мысли заставить работать Django в неблокирующем режиме, я относился весьма скептически — ну в самом деле, кто за это возьмется?

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

Деревянные игрушки-2 или Питоним на смартфоне

Время на прочтение4 мин
Количество просмотров1.6K
После того, как я опубликовал пару дней назад пост «Деревянные игрушки или Как я писал мобильные игры с телефона» за авторством теперь уже хабраюзера Artemzr, моя аська и почта пережили мини-хабраэффект: желающих попасть на главную хабра таким путём оказалось не так уж мало.

Среди них был и московский студент OmKol хабраюзер OmKol, которого этот пост вдохновил на то, чтобы поделиться уже своим опытом: как написать программу на Python на смартфоне, используя только средства смартфона, без ПК.

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

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

Началась конференция PyCamp Киев

Время на прочтение1 мин
Количество просмотров518
imageСтартовала конференция PyCamp Киев.
Онлайн трансляцию можна посмотреть по адресу http://pycamp.org.ua/live/
Хеш-тег конференции — #pykyiv

UPTD: Конференция завершена, ссылки на все слайды и видеозаписи докладов скоро будут доступны на сайте.

Асинхронный http-клиент, или почему многопоточность — лишнее

Время на прочтение10 мин
Количество просмотров9.3K
Какое-то время назад Хабре проскакивала заметка про клиент-парсер сайтиков на Питоне. Автор на этом примере разбирал проблемы многопоточных сетевых приложений.

Но мне показалось, что ту же задачу (вернее, ее главную часть — параллельные соединения c http-cервером) вполне можно эффективно решить и без потоков.

И решил...

Простой консольный прогрессбар на питоне

Время на прочтение3 мин
Количество просмотров32K
В связи с некоторыми вычислениями на питоне (например, подсчётом коэффициента симметрии карты реликтового излучения) мне захотелось сделать процесс более наглядным. Ну хотя бы добавить прогресс-бар. Скучно, знаете ли, сидеть перед пустой консолью и втыкать на запущенную команду. То ли работает, то ли висит… с ходу не понять. А делать какой-нибудь лог исполнения не хочется, так как потом в полученом хаосе глаз теряется.
Недавно нашёл выход: модуль progressbar.

PyCamp Киев

Время на прочтение1 мин
Количество просмотров712
image30 января мы будем рады видеть вас на конференции PyCamp Kyiv.

В конференции примут участие python-разработчики украинских и российских команд, уже полученно более 250 заявок на участие.

Ожидаются доклады хорошо известных в питоновских кругах Юрия Юревича из Омска, Александра Шигина из Москвы; также среди докладчиков Михаил Кашкин(aka xen) из Днепропетровска, Александр Бельченко из Запорожья, киевляне Александр Соловьев (aka ingspree), Андрей Светлов, Серегей Кириллов (aka rushman), Андрей Мишковский, Владимир Пузанов (aka farcaller), Владимир Кириллов (aka darkproger), Дмитрий Кожевин. Также рассказать о новой IDE для Python — PyCharm планирует Дмитрий Жемеров (aka yole) из JetBrains.

Участие в конференции платное. Регистрационный сбор (на входе) составит 50 грн. По студенческому билету (любой страны) — 20 грн.

Конференция пройдет в помещении i-klass, по адресу ул.Ивана Мазепы, 34 (прежнее название улицы — ул. Январского Восстания), Киев.
Ориентиры — Киево-Печерская Лавра, музей Великой Отечественной Войны, музей «Мистецький Арсенал».
Ближайшие станции метро — Арсенальная (красная ветка), Печерская (зеленая ветка)
Карту можно посмотреть тут: http://www.i-klass.com/rus/contacts/how

bpython

Время на прочтение2 мин
Количество просмотров14K
image bpython — это красивый и функциональный интерфейс к стандартному интерпретатору Python для *nix. Он распространяется под Лицензией MIT и обладает следующими интересными возможностями:



  • In-line подсветка синстаксиса
  • Автодополнение кода с предложениями
  • Автовыравнивание кода
  • Pastebin
  • Сохранение введённого кода в файл
  • Восстановление удалённой строки («Rewind»)
  • Предложение параметров для функций

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

Играемся с гироскопом ноутбука thinkpad в linux

Время на прочтение2 мин
Количество просмотров4.2K
В линукс показания с этого датчика можно считать из файла /sys/devices/platform/hdaps/position
Можно создать виртуальный джойстик и, например, катать им шарики в neverball, крутить google earth и т.п. :)
Всё это описано тут
Я тоже решил развлечься и написал небольшую программу, которая заставляет cairo-clock сползать по экрану в зависимости от наклона ноутбука.
подробности

Озеленение Twisted

Время на прочтение2 мин
Количество просмотров3.2K
Как обычно, в праздники, в свободное время от затирки плитки и прочих прибиваний плинтуса, меня захватила очередная идея из цикла «попробовать». На хабре проскочила статья о Pyrant. Первой итерацией я взял и переделал основную часть протокола на Twisted — github.com/Deepwalker/tx-tokyo. И все было хорошо, наступление шло по всем фронтам, но тут я перешел к питоничной части pyrant, и понял что сделать yield a[megakey]='mega data string', вообще говоря невозможно. Это было очень печально, ведь в статье меня зацепило именно легкое обращение с данными в питоничной форме. Что же делать, Пух, спросил я себя? И вспомнил о greenlet-ах.

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

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