Обновить
1024K+

Python *

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

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

Генератор текста на основе триграмм (python)

Время на прочтение10 мин
Охват и читатели39K
В данной статье описывается как сгенерировать псевдотекст на основе триграммной модели. Полученный текст вряд ли возможно где-либо использовать, тем не менее это неплохая иллюстрация использования статистических методов обработки естественного языка. Пример работы генератора можно посмотреть здесь.

Сухая теория


И так, наша задача сгенерировать текст. Это значит, нам нужно взять слова и выстроить их в определенном порядке. Как определить этот порядок? Мы можем пойти следующим образом: построить фразы, наиболее вероятные для русского языка. Но что значит вероятность фразы языка? С точки зрения здравого смысла это бред. Тем не менее, эту вероятность можно задать формально как вероятность возникновения последовательности слов в неком корпусе (наборе текстов).
Читать дальше →

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

Время на прочтение6 мин
Охват и читатели49K
В этой части статьи рассматриваются уловки для выбора одного из двух значений на основе логического условия, передача и получение произвольного числа аргументов функций, а также распространенный источник ошибок — тот факт, что дефолтные значения аргументов функции вычисляются только один раз.
Читать дальше →

Nagare — пример использования фреймворка

Время на прочтение4 мин
Охват и читатели1.2K
В прошлом посте я презентовал Nagare — революционный (хоть и имеющий аналоги на Smalltalk и CL) питоновский web-фреймворк. Тот пост был несколько сумбурен и отражал, скорее, степень моего восторга, чем реальные особенности технологии. Сегодня я попробую дать немного более практический пример.
Читать дальше →

Проекты Python в рамках Google Summer of Code — gevent

Время на прочтение2 мин
Охват и читатели9.3K
Уже весна, а это значит… что скоро лето и очередное Google Summer of Code — возможность получить кучу опыта и даже какое-то материальное вознаграждение. Хочу рассказать об одном интересном проекте, которому вы сможете помочь во время летних каникул — gevent.
Читать дальше →

Meld в Windows

Время на прочтение6 мин
Охват и читатели16K
Краткая справка: Meld — утилита для визуального сравнения файлов/папок.

Наверняка не каждый согласится, что этот иструмент стоит тех танцев с бубном, которые необходимо совершить вокруг него для более менее комфортной работы (Meld слегка не расчитан на работу в Windows, но так как написан на python с использованием GTK, может функционировать и в ней). Я же, потыкав палочкой в бесплатные альтернативы, решил для себя, что если оно заведется, то усилия не будут напрасными.

Предлагаю заинтересовавщимся перейти к делу.

Вышел PyPy 1.2 и ускорил Python в разы!

Время на прочтение2 мин
Охват и читатели14K
Вышел PyPy 1.2. Основное отличие — наличие JIT компилятора.
Чтобы долго не объяснять что это и зачем — простой тест:

cnt = 10 * 1000 * 1000
for _ in xrange(cnt): 
    i = i + 1


5.8млн операций сложения в секунду на обычном СPython 2.6 (python test.py)
42.5млн операций в секунду на PyPy 1.2 (pypy test.py)
WinXP SP3, Core2Duo.

Да, в 7 раз быстрее он тест сделал! И это не только на синтетическом тесте: «django» в 3 раза быстрее, «n-body» в 7 раз быстрее… Я не знаю что такое тест «richards», но он теперь вообще в почти 12 раз быстрее. Смотрите результаты сами.

Читать и качать (из раздела "«JIT compiler» version"). 64-bit версии пока нет. А unladen-swallow нервно курит... Под катом еще несколько невероятностей (stackless, «песочница для python кода»)…
Читать дальше →

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

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

Немного про py2exe

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Содержание

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

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

Время на прочтение6 мин
Охват и читатели135K
Почему после распараллеливания выполнение вашей программы может замедлиться вдвое?
Почему после создания потока перестает работать 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 мин
Охват и читатели49K
PythonВ мире все примерно распределяется в соответствии с принципом Паретто. Меньшая часть — богатые, большая часть — бедные (читающий, ты входишь в золотой миллиард). Тоже касается и материалов о программировании. Порой очень сложно найти хоть что-нибудь не начального уровня.

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

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

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

Подробнее

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

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

Присказка


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

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

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

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

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

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

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

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

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

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