Обновить
787.51

Python *

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

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

Непайтоновый Пайтон

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

FizzBuzz


Когда я подавал заявку на вступление в Hacker School, я столкнулся со следующей задачкой:
Напишите программу, которая выводит числа от 1 до 100 (включительно). Если число делится на 3, выведите Fizz вместо числа. Если оно делится на 5, выведите Buzz. Если оно делится как на 3, так и 5, выведите FizzBuzz. Вы можете использовать любой язык программирования.

(С тех пор сотрудники Hacker School слегка изменили задачку, скорее всего, для того, чтобы затруднить её решение с помощью интернет-поисковиков. Я намеренно не включил сюда изменённое условие, чтобы минимизировать эффект моего поста на гуглобельность.)

Задачка довольно проста и не требует обдумывания, поэтому хорошо подходит как пример для разных языков и стилей программирования словно Hello, World или задача на поиск чисел Фибоначчи.
Читать дальше →

Высоконагруженные сайты и приложения на Python / Django (29 проектов)

Время на прочтение9 мин
Охват и читатели140K
Наша компания довольно давно занимается разработкой больших веб-приложений на Python / Django. В рунете крайне мало информации об этом замечательном языке программирования и фремворке на его основе. Мы решили исправить эту ошибку и рассказать о популярных высоконагруженных сайтах на этой технологии, а также дать много интересных технических подробностей. Для удобства сравнения сайтов между собой мы приводим еще и немного статистики к каждому из проектов. В целом сайтов на Python / Django, конечно, очень много в мире, мы охватим только наиболее интересные по нашему мнению.

Небольшая таблица известных проектов (на основе данных http://builtwith.com/), кликабельно:
Читать дальше →

Обзор IPython Notebook 2.0

Время на прочтение2 мин
Охват и читатели57K
Здравствуйте, уважаемые читатели.
3 апреля 2014 вышел долгожданный релиз IPython под номером 2.0.
Для тех кто не знает, IPython это интерактивная оболочка для языка программирования Python, которая предоставляет расширенную интроспекцию, дополнительный командный синтаксис, а также подсветку и автоматическое дополнение кода.
Далее я постараюсь описать наиболее значимые изменения по сравнению с предыдущей версией. Основные изменения в ней претерпела среда IPython Notebook, о нововведениях которой я напишу ниже.

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

Java Virtual Machine in pure python

Время на прочтение1 мин
Охват и читатели12K
Коллеги,

Некоторое время назад я начал работать над обучающим проектом, совмещающим java + python + некоторые базовые алгоритмы. Промежуточный этап разработки — имплементация спецификации jdk7 на python. (Java исполняемая в python)

Код доступен www.pyjvm.org или github: github.com/andrewromanenco/pyjvm

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

Второй PyCon Russia: Екатеринбург, 2-3 июня

Время на прочтение2 мин
Охват и читатели2.9K
Питонисты, не забудьте включить в свои планы на лето — PyCon Russia 2014 пройдет в Екатеринбурге 2 и 3 июня. Сейчас мы активно ищем докладчиков (как ими стать, читайте ниже). Еще под катом: немного из истории конференции и наши планы на этот год.

image
Иностранные докладчики прошлого года в сувенирных ушанках. Слева направо: Jeff Lindsay, Dr. Russell Keith-Magee, Holger Krekel, Юлия Герасимович, David Cramer, Amir Salihefendic

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

Работа с ZeroMQ и PostgreSQL в asyncio

Время на прочтение2 мин
Охват и читатели15K
Наверное, все уже слышали о чудесной библиотеке asyncio?

Если нет, то коротко: эта либа стала стандартом на асинхронное сетевое программирование на Python. tornado и twisted или научатся с ней работать или постепенно уйдут в маргиналы.

asyncio прекрасна, но это просто библиотека для работы с TCP, UDP, UNIX сокетами, PIPES и асинхронным запуском subprocess.

Чтобы всем было здорово нужны сторонние библиотеки, умеющие работать с asyncio. Кое-что уже есть, но мало.

Вот я с коллегами и сделал пару: одну для ZeroMQ и другую для PostgreSQL

Если вы прочно сидите на Python 2 и не интересуетесь Python 3 — не ходите под кат во избежание глупых вопросов и прочих недоразумений.
Читать дальше →

Python-digest #21. Новости, интересные проекты, статьи и интервью [30 марта 2014 — 6 апреля 2014]

Время на прочтение3 мин
Охват и читатели14K
И снова с вами новости о python и близлежащих технологиях. Зарелизились PyMongo и IPython, продолжение статьи об ООП, анонс Pyston и еще много интересного на любой вкус.

Огромное спасибо owlman75 за иллюстрацию, а также тем кто присылает новости для создания дайджестов. Если я что-то не публикую — значит оно просто не совсем свежее. Обращайте, пожалуйста, внимание на дату публикации. Хотя для ну очень хороших материалов делаю поблажки.

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

SaltStack: использование шаблонов jinja и хранилища pillar для гибкой настройки конфигураций

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

Что здесь интересного?


Статья предназначена для тех кто использует или думает использовать SaltStack в качестве инструмента для управления конфигурациями. Постараюсь очень кратенько поделится опытом использования этой системы для гибкого управления конфигурациями сервисов на примере Tinyproxy.
Это вторая статься в серии о SaltStack, первую читайте здесь.
Читать дальше →

Соединяем эллиптический тренажер и pygame

Время на прочтение5 мин
Охват и читатели27K
Привет, друзья! Случилось однажды так, что для восстановления после травмы я прикупил себе такой вот прибор.

Со своими прямыми обязанностями он справлялся вполне удовлетворительно, но было одно «но», и заключалось оно в том, что спидометр путался в показаниях, и следовательно, показывал разные результаты по пройденной дистанции. Если идти достаточно медленно, то спидометр вообще молчал. И решено было сделать свой спидометр с… ну вы поняли.
Что из этого получилось

Habrachat или использование ARM сервера

Время на прочтение2 мин
Охват и читатели16K
В прошлый раз я запустил свой сайт на ARM сервере от хостера GlobalTel, а теперь решил написать проект с 0 для этого сервера.
Получилось вот это: habrachat.org. Маленькие подробности под катом.


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

Python-digest #20. Новости, интересные проекты, статьи и интервью [23 марта 2014 — 30 марта 2014]

Время на прочтение3 мин
Охват и читатели9.2K
Очередной выпуск новостей о python и близлежайших технологиях, пусть и с суточным опозднаием — прибыл. Сегодня о REST, тестировании производительности, машинном обучении, внутренностях __del__ и еще много вего интересного

Традиционно благодарю owlman75 за иллюстрацию, тех кто присылает новости для создания дайджестов, а также периодически присылает мне отчеты об ошибках через Орфус

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

MakeHuman: релиз спустя 12 лет разработки

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

MakeHuman это бесплатное и открытое программное обеспечение (распространяется под лицензией CC0) для создания реалистичных 3D моделей людей в иллюстрациях, анимациях и играх. Есть возможность экспортировать модели для Blender, XSI, Max и др.
Читать дальше →

Примеры использования asyncio: HTTPServer?!

Время на прочтение8 мин
Охват и читатели52K
Не так давно зарелизилась новая версия Python 3.4 в changelog которой вошло много «вкусностей». Одна из таких — модуль asyncio, содержащий инфраструктуру пригодную для написания асинхронных сетевых приложений. Благодаря концепции сопрограмм (coroutines), код асинхронного приложения прост для понимания и поддержки.

В статье на примере простого TCP (Echo) сервера я постараюсь показать с чем едят asyncio, и рискну устранить «фатальный недостаток» этого модуля, а именно отсутствие реализации асинхронного HTTP сервера.
Читать дальше →

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

Запуск локальных ssh/telnet/vnc клиентов по ссылке из карты Zabbix

Время на прочтение14 мин
Охват и читатели35K
Множество стоек, каждая плотно упакована серверами, маршрутизаторами, коммутаторами и прочими kvm'ами.
Нужен какой-нибудь удобный способ рулить всем этим хозайством, быстро подключаться к нужному оборудованию и
производить его настройку. Прямо чтобы пара кликов мышью и оп — перед тобой консоль нужного коммутатора.

Для мониторинга наших подопечных мы используем Zabbix.
Так почему бы не приспособить сей дивный инструмент и для этой задачи.
Ведь было бы очень удобно ткнуть в карте Zabbix на нужную стойку, перейти на её подкарту и, выбрав железку,
запустить локальный ssh/telnet/vnc клиент на своем компьютере.

Озадачившись идеей, я начал мучать поисковые машины в надежде отыскать варианты реализации.
Был найден данный тред на форуме Zabbix, но мне хотелось запускать именно локальные программы на моей машине кликом по ссылке в карте.
Еще некоторое время поплутав по закоулкам всемирной паутины и помучав знакомых программистов глупыми вопросами я вспомнил о… Python.
Да, Python, не раз пришедший на помощь в трудную минуту.
Питаю очень нежные чувства к этому языку за его простоту и приятный теплый синтаксис.

И так, вектор атаки изменился и поисковики замерли в ожидании нового вброса мыслеобразов…
Спустя некоторое время я уже четко представлял как буду решать задачу — напишу клиент-серверное приложение!
На моем компьютере будет ждать команд серверная часть, а на сервере мониторинга, при клике по ссылке, будет запускаться клиент и передавать нужную команду.

Результатом изысканий стало кроссплатформенное приложение, работает как на Linux, так и на Windows.
Эпопея проб и ошибок на пути к заветной цели ждет вас под хабракатом.
Читать дальше →

Учимся бороться с ëÒÁËÏÚÑÂÒÙ

Время на прочтение1 мин
Охват и читатели32K
Недавно у меня возникла потребность скачивать кучу всяких документов из веба. Естественно не ручками, а питонячими скриптами. Но вот беда — довольно часто странички содержат кракозябры какую-то хрень.

image

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

Python Meetup: февральская встреча

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

Около-Python-овские темы в Минске традиционно активно обсуждают в последнюю пятницу каждого месяца на Python Meetup. На февральском митапе выступил Константин Данилов с темой доклада «Обзор способов написания конкурентных программ в питоне».

Константин Данилов – опытный разработчик ПО, пишет на питоне больше 10 лет. Последние три года работает в компании Мирантис над частными облаками. Занимается обучением питону. Кроме того, ведет блог о python, ИТ и виртуализации koder-ua.blogspot.com.

Кроме доклада Константина под катом можно найти три блиц-доклада из рубрики lightning talks на Python Meetup. Внимание на youtube-экран!
Читать дальше →

Тестируем ARM платформу Marvel Armada XP как хостинг для Python проекта

Время на прочтение4 мин
Охват и читатели8.6K
Благодаря GlobaTel смог получить на тест один из серверов (модулей) как из этой статьи Сервер на ARM? Made in Russia!. Как вы понимаете хостинг на ARM, а не набившем оскомину x86, это как минимум свежо и возможно будет модно. Спасибо GlobaTel.

В этой заметке я не хочу сильно подымать тему производительности (но она будет), куда интереснее посмотреть насколько безпроблемно заведётся всё ПО моего проекта. Разворачивал я только ПО, базу картинок я никуда не перемещал. Так что под катом anime-pictures.net т.е. nginx, Python+Pylons+SQLAlchemy, PostgreSQL, Memcached, Redis.
Сразу оговорюсь — заметка будет не последней, это только первое впечатление.

image

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

Transcend WiFi. Пишем клиент Shoot&View для Windows, Mac и Linux

Время на прочтение11 мин
Охват и читатели30K
На хабре неоднократно упоминали о карте памяти формата SDHC со встроенным WiFi передатчиком. Купив эту карту, я был разочарован ужасным программным обеспечением, которое идет «в комплекте» с картой. Если приложением для iOS и Android хоть как то можно пользоваться, то отсутствие клиента под windows и macos, лишает карту возможности использования ее профессионалами. Точнее сказать, на PC есть веб интерфейс, но кроме ужасного внешнего вида, меня разочаровало отсутствие востребованной у фотографов функции Shoot&View, которая позволяет практически мгновенно видеть на большом экране компьютера результат съемки.

Любители geek-porno скорее всего разочаруются — мы не будет модифицировать прошивку, хакать ее, вскрывать саму карту памяти. Мы будет работать со «стоковой» картой памяти, без каких либо модификаций.

Итак, в этой статье, мы разберем с вами протокол Shoot&View карт памяти Transcend WiFi и напишем на python кроссплатформенный клиент, который запустится на windows, linux и MacOS. А для самых нетерпеливых, в конце статьи вас ожидает готовый python модуль для своих проектов, консольный клиент, а так же GUI утилита, которая работает на windows, linux и macos.

Читать далее

Программируем на Python

Время на прочтение1 мин
Охват и читатели53K
Эта книга — идеальное пособие для начинающих изучать Python. Руководство, написанное опытным разработчиком и преподавателем, научит фундаментальным принципам программирования на примере создания простых игр. Вы приобретете необходимые навыки для разработки приложений на Python и узнаете, как их применять в реальной практике. Для лучшего усвоения материала в книге приведено множество примеров программного кода. В конце каждой главы вы найдете проект полноценной игры, иллюстрирующий ключевые идеи изложенной темы, а также краткое резюме пройденного материала и задачи для самопроверки. Прочитав эту книгу, вы всесторонне ознакомитесь с языком Python, усвоите базовые принципы программирования и будете готовы перенести их на почву других языков, за изучение которых возьметесь. Научитесь программировать на Python играючи!

image

Книга на сайте издательства ПИТЕР

Оглавление
Отрывок
Читать дальше →

Сломай меня полностью (ZeroNightsCrackme, Часть 2)

Время на прочтение11 мин
Охват и читатели14K
И снова всем привет! В прошлый раз я раскрыл решение ZeroNightsCrackMe. Все кто успел его вовремя решить, мог получить приглашение на экскурсию в один из офисов Лаборатории Касперского, а так же подарок, в виде лицензионного ключа на три устройства. Но, помимо всего прочего, в Касперском сообщили, что крякми был облегченным, т.е. существует более сложная его версия и она будет разослана тем, кто пожелает её посмотреть (но без подарков, в своё удовольствие, так сказать). Конечно же я не мог отказать себе в том, чтобы не покрутить эту версию, поэтому подтвердил свое желание на участие.

17 февраля пришло письмо с новым крякми. Именно о его решении (и не только) я и поведаю в этой статье.
Читать дальше →