IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте авторский блог

     15.11.2015       Выпуск 99 (09.11.2015 - 15.11.2015)       Статьи

Использование библиотеки Matplotlib. Как рисовать линии и геометрические фигуры на графике

Matplotlib позволяет рисовать на графиках различные геометрические фигуры, стрелки, а также линии, заданные различными способами. В этой статье будут рассмотрены основные моменты, характерные для рисования различных геометрических фигур. В качестве примера будет рассматриваться скрипт, который рисует следующую картинку:

     12.11.2015       Выпуск 99 (09.11.2015 - 15.11.2015)       Статьи

uvloop -- альтернатива стандартному asyncio loop

В последнее время Юра Селиванов (ага, тот самый автор PEP-492 aka async/await и MagicPython) работал над тем чтобы сделать asyncio побыстрее.

Он взял libuv и построил с её помощью uvloop -- asyncio совместимый event loop.

Результаты замера производительности здесь.

Получается, что uvloop в 3.5 раза быстрее стандартного и в 1.25 раза обгоняет gevent.
Т.е. абсолютный победитель по скорости в мире Python.

Библиотека пока еще не имеет стабильной версии, скоро всё будет.

     12.11.2015       Выпуск 99 (09.11.2015 - 15.11.2015)       Статьи

Простой консольный мессенджер для VK на Python

Как-то меня осенила мысль: «Зачем на работе постоянно прятать вкладку браузера с ВК от начальства, если можно ее замаскировать?»

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

     09.11.2015       Выпуск 99 (09.11.2015 - 15.11.2015)       Статьи

Бюджетная рассылка СМС

Один из двух примеров работающих на raspberry pi, модуле SIM 900 и 3g-modem huawei e-линейки - с примерами кода на Python

     09.11.2015       Выпуск 99 (09.11.2015 - 15.11.2015)       Статьи

Некоторые репозитории в помощь изучающим и преподающим Python и машинное обучение

Я Юрий Кашницкий, раньше делал здесь обзор некоторых MOOC по компьютерным наукам и искал «выбросы» среди моделей Playboy.

Сейчас я преподаю Python и машинное обучение на факультете компьютерных наук НИУ ВШЭ и в онлайн-курсе сообщества по анализу данных MLClass, а также машинное обучение и анализ больших данных в школе данных одного из российских телеком-операторов. 

Почему бы воскресным вечером не поделиться с сообществом материалами по Python и обзором репозиториев по машинному обучению… В первой части будет описание репозитория GitHub с тетрадками IPython по программированию на языке Python. Во второй — пример материала курса «Машинное обучение с помощью Python». В третьей части покажу один из трюков, применяемый участниками соревнований Kaggle, конкретно, Станиславом Семеновым (4 место в текущем мировом рейтинге Kaggle). Наконец, сделаю обзор попавшихся мне классных репозиториев GitHub по программированию, анализу данных и машинному обучению на Python.

     06.11.2015       Выпуск 98 (02.11.2015 - 08.11.2015)       Статьи

SWAPY с новым генератором кода

SWAPY – графическая утилита для автоматизации UI для pywinauto (Python). В версии 0.4.7 полностью переработан генератор кода. Основные возможности, а также примеры как быстро и просто создать скрипты автоматического тестирования UI, смотрите под катом. 

     05.11.2015       Выпуск 98 (02.11.2015 - 08.11.2015)       Статьи

Событийно-ориентированный бэктестинг на Python шаг за шагом. Часть 5 (и последняя)

В предыдущих статьях мы говорили о том, что такое событийно-ориентированная система бэктестинга, разобрали иерархию классов, необходимую для ее функционирования, обсудили то, как подобные системы используют рыночные данные, а также осуществляют отслеживание позиций и генерацию приказов на покупку. Кроме того, мы описали процесс оценки производительности тестируемых стратегий. В сегодняшнем материале будет рассмотрен процесс создания обработчика API брокерской системы для перехода к реальной торговле. Примечание: В качестве примера автор использует API зарубежной компании Interactive Brokers, отсюда названия обсуждаемых модулей (IBExecutionHandler и т.п.). У ITinvest есть собственный API-интерфейс SmartCOM, который может быть использован при создания систем, подобных описываемой

     05.11.2015       Выпуск 98 (02.11.2015 - 08.11.2015)       Статьи

Решение задачи кредитного скоринга в студии Microsoft Azure Machine Learning

Резюме Предсказать, выплатит клиент банка кредит или нет. Задача была предложена на интернет-турнире, устроенном одним банком. Один из примеров ее решения можно найти здесь. Наша цель состоит в построении решения на платформе Microsoft Azure. 

     03.11.2015       Выпуск 98 (02.11.2015 - 08.11.2015)       Статьи

Аннотации типов в Python,PEP 0484 и немного почтовых сервисов

Краткий обзор что привнес PEP 484 и что из этого можно приготовить

     29.10.2015       Выпуск 97 (26.10.2015 - 01.11.2015)       Статьи

PyTest

По историческому призванию я SQL-щик. Однако судьба занесла меня на BigData и после этого понесла кривая — я освоил и Java, и Python, и функциональное программирование (изучение Scala стоит в списке). Собственно на одном из кусков проекта встала необходимость тестирования кода на Python. Ребята из QA посоветовали для этих целей PyTest, но даже они затруднились толком ответить чем этот зверь хорош. К сожалению, в русскоязычном сегменте информации по данному вопросу не так уж и много: как это используют в Yandex да и все по-хорошему. При этом описанное в этой статье выглядит достаточно сложно для человека начинающего путешествие по этой стезе. Не говоря уже об официальной документации — она приобрела для меня смысл лишь после того, как я разобрался с самим модулем по другим источникам. Не спорю, там написаны интересные вещи, но, к сожалению, совсем не для старта.

     25.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Как подружить AWS Lambda и PostgreSQL

С недавних пор в сервисе AWS Lambda появилась нативная поддержка Python 2.7. Для тех, кто не в курсе, что такое AWS Lambda, отсылаю к статье на хабре. Основное преимущество использования сервиса — создание масштабируемой беcсерверной архитектуры. В данной статье я расскажу о способе подружить AWS Lambda и PostgreSQL.

 

     25.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Андрей Светлов — MagicPython -- Syntax Highlighter для SublimeText

Мой приятель Юра Селиванов попросил написать рекламный пост о его новом проекте MagicPython.

Это syntax highlighter для Sublime Text и Atom, который поддерживает все новые языковые конструкции Python 3.5 (async def и await например) плюс type annotations, string formatting и регулярные выражения.

Sublime поддерживает Python из коробки, но с Python 3 (а особенно с Python 3.5) у него проблемы. MagicPython понимает всё.
Разметка шаблонов для форматирования строк и регулярок заслуживает отдельного упоминания -- выглядит прекрасно и заметно облегчает жизнь.

     23.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

10 приложений для изучения Python на Android-устройствах

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

В процессе изучения языка программирования, в частности Python, я считаю, что нужна погружаться в него полностью. Лозунг: «Ни дня без кода!» я дополняю, ну если ни кодить, то хотя бы почитать об этом. Для того чтобы не выходить из ритма в условиях, когда нужно в жизни сделать многое, но некогда, а хотелось бы учить Python, мобильный приложения помогут не тратить зря время в транспорте, во время ожиданий и т.д.Предлагаю список приложений из Google Play для изучения Python на Android-устройствах, которые помогут не только получить знания, но и проверить свой уровень по Python.Три из ниже перечисленных приложений я обязательно советую студентам при изучении Python: Learn Python, Quiz&Learn Python и Python Challenge. Ну теперь подробнее.

     22.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Celery: лучшие практики

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

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

     21.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Создание .exe файла для авторизации и взаимодействия с VK API при помощи Python

 

В этой статье будет рассмотрен способ создать .exe файл, позволяющий пройти авторизацию ВК и выполнить определенные запросы к VK API. Установка Python не требуется.
 

Системные требования

 

     21.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

PYCON RUSSIA-2015: видео и презентации докладов

18-19 сентября в Екатеринбурге прошла третья международная конференция python-разработчиков PyCon Russia. 21 доклад, два мастер-класса, Lightning Talks — все это PyCon-2015. Под катом — отчет о прошедшей конференции, много видео и презентации докладов. Питонисты собрались из 25 городов, среди которых: Сан-Франциско, Париж, Прага, Бонн, Таллин, Минск, Киев, Москва, Санкт-Петербург, Казань, Уфа 

     21.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Модуль SymPy. Пример символьных вычислений.

SymPy - это обширный Python модуль реализующий символьные вычисления. В качестве примера будет разобрана реальная математическая задача.

     20.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Сервис для системного администратора. Часть 1

Задачи системного администратора — разнообразны. Работа в консоли — создание пользователей, тестирование, установка и конфигурация пакетов на серверах, просмотр логов и трафика, настройка сети и туннелей. Работа с железом — установка оборудования и документацией, написание планов работ, описание работы сервисов.

     18.10.2015       Выпуск 95 (12.10.2015 - 18.10.2015)       Статьи

Удалённое исполнение системных команд по запросу через сокеты на Python 3. Протокол передачи данных

В предыдущей статье я рассказал как создать сервер и клиент на Python 3, используя встроенные сокеты. Но у этого приложения было много недостатков, которые я попытаюсь исправить в этой и последующих статьях.

Так какими же недостатками обладает наше приложение?

  • Отсылается один единственный пакет, длина которого не может превышать заранее заданной границы в 1 Кбайт.
  • Приложение без проверки передаёт аргумент, принятый из сети, в оболочку (URL).
  • Недостаток функциональности. Мы не можем, например, скачать все изображения с Хабра, или скачать отдельный хаб.


Сегодня я расскажу как решить первую проблему, а заодно и немного о TCP.

     17.10.2015       Выпуск 95 (12.10.2015 - 18.10.2015)       Статьи

Удалённое исполнение системных команд по запросу через сокеты на Python 3 или как я сайты скачивал

Не так давно качество мобильного интернета в моём городе стало постепенно ухудшаться из-за возрастающей на сети операторов нагрузки и некоторые сайты, требующие большое количество соединений (зависимые файлы страницы) стали загружаться ну ОЧЕНЬ медленно. По вечерам скорость опускается на столько, что некоторые сайты могут полностью загружаться в течении нескольких десятков секунд.

Есть несколько способов решения данной проблемы, но я решил выбрать немного необычный для нашего времени способ. Я решил скачивать сайты. Конечно, данных способ не подходит для крупных сайтов, вроде Хабра, тут разумнее использовать парсер, но можно скачать и отдельный хаб, список пользователей, или только свои публикации с помощью HTTrack Website Copier, применив фильтры. Например, чтобы скачать хаб Python с Хабра нужно применить фильтр "+habrahabr.ru/hub/python/*".