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

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


Новый материал в ленте
  tornado - 6.4.2

Масштабируемый, не блокирующий web-сервер. Скачать можно по ссылке: https://pypi.python.org/pypi/tornado/


Python Дайджест. Выпуск 120

Django и анализ данных

(04.04.2016 - 10.04.2016)

поделиться выпуском 
pythondigest.ru: Выпуск 120

Конференции, события, встречи разработчиков

  Пять причин, почему мы отказались от русского перевода конференции “Piter Py” conference pycon PiterPy

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

Статьи

  Исследуем поведение Mark Zuckerberg facebook analysis

Статья описывает исследование пользователя в соц. сети Facebook. Автор попытался выявить интересы и построить всяческие схемы.

facebook-word-cloud

  Анализ истории файлов на Dropbox с помощью Python analysis

Автор описывает как провел анализ истории текстового файла на Dropbox. Он изучил размер файла во времени, количество слов и другое.

MeanWordsPerHour

  Нормализация данных в Python: нормализация денег analysis

Короткая статья, описывет опыт использования нормализации данных для денег с учетом инфляции

  Разрушители мифов: Автоматическое решение Google Recaptcha google recaptcha CAPTCHA scipy hash numpy

Привет! Я воплощаю интересные идеи на python и рассказываю о том, что из этого вышло. В прошлый раз я пробовал найти аномалии на карте цен недвижимости. Просто так. На этот раз идея была построить систему, которая смогла бы сама решать очень популярную ныне Google Recaptcha 2.0, основываясь на некоторых алгоритмах и большой базе обучающих примеров. 
Google Recaptcha 2.0 представляет собой набор изображений (9 или 16 квадратных картинок под одной инструкцией), среди которых пользователю, для подтверждения своей разумности, нужно выбрать все изображения одной категории. Речь пойдет НЕ о построении системы машинного обучения — распознавать мы будем именно капчи!

  Lambdify — новый взгляд на работу с AWS Lambda AWS AWS Lambda Amazon

Данная статья расскажет о попытке подружить AWS Lamba и python в истинном смысле этого слова. Под истинным смыслом я понимаю возможность взаимодействовать c сервисом (создавать, обновлять и вызывать лябда-функции) непосредственно из пайтона. Если вам интересны AWS Lambda и python, представляю вашему вниманию proof-of-concept библиотеки lambdify.

  Чтение больших объемов данных в Python/Postgresql postgresql psycopg2

Стек рассматриваемых технологий: Postgresql 9.3, Python 2.7 с установленным модулем «psycopg2».

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

  Компьютерное зрение и мобильные роботы. Часть 1 — V-REP, Python, OpenCV

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

В нашем хакспейсе — создать робота не такая большая проблема. Но не у всех и не всегда есть возможность экспериментировать с реальным «железом» — поэтому интересно было попробовать решить задачу — в виртуальной среде, и после уже оживить «железо».

Так и возникла идея серии статей, про решение простейшей задачи ориентации робота в пространстве — от виртуальной симуляции, до воплощения в реальном мобильном роботе:
 

  Построение REST JSON API на Python3, Flask и SQLAlchemy REST JSON API Flask SQLAlchemy

Подробное руководство по созданию REST системы на Flask

  Работаем с JSON данными на Python Flask JSON Flask

В статье вы найдете пример простых конструкций для упрощения работы с JSON в Flask

  Сравнение типов в Python 3 std typing

Если вы занимаетесь мета-программированием, то сталкиваетесь с необходимостью работы с типами, а не объектами.

В статье вы найдете необходимую базу для понимания типов в Python

  Пересоздание замыканий в Python syntax clojure

Замыкания - простой и мощный инструмент для сокрытия переменных в локальном Scope между вызовами функций. Статья описывает способ пересоздания замыканий.

  Улучшение прогрева PyPy: более эффективное предоставление trace JIT PyPy optimization

Разработчики PyPy сообщили об улучшении разогрева виртуальной машины PyPy. Было получено ускорение до 2.5%

  Действительно полезное приложение для Digium телефонов Android

Чуть более года назад мы разрабатывали приложения для Digium телефонов. Несмотря на то, что планы были обширными, мы остановились только на следующих вариациях:

  • Погода с сайта гисметео
  • Курс валют с сайта центробанка
  • RSS лента с новостных порталов

Данные приложения были написаны, чтобы ознакомить сообщество с API и примерами, даже больше just for fun. Cофт, если так можно его назвать, не несет себе никакого уникального применения, которое было бы полезно реальному бизнесу. 

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

Учебные материалы

  Разворачиваем Django приложение в production на примере Telegram бота Telegram API Django DigitalOcean

Вторая часть статьи про написание Telegram бота на Python/Django. В ней мы поговорим о процессе деплоя в production.

  Как написать Telegram бота: практическое руководство Telegram bot API Django

Пишем Telegram бота через простейшее веб-приложение на Django.

  Как сделать GUI на Python 3.5 GUI Tkinter

Статья описывает использование Tkinter в Python 3.5

Интересные проекты, инструменты, библиотеки

  tornado_jsonapi - REST JSON API для Tornado API REST JSON API REST Tornado

import sqlite3
import tornado.ioloop
import tornado.web
import tornado_jsonapi.handlers
import tornado_jsonapi.resource

schema = {
    "title": "post",
    "properties": {
        "text":
        {
            "type": "string"
        },
        "author":
        {
            "type": "string"
        }
    }
}

res = tornado_jsonapi.resource.DBAPI2Resource(
    schema, sqlite3, sqlite3.connect(':memory:'))
res._create_table()

application = tornado.web.Application([
    (
        r"/api/posts/([^/]*)",
        tornado_jsonapi.handlers.APIHandler,
        dict(resource=res)
    )
])
application.listen(8888)
tornado.ioloop.IOLoop.current().start()

  pytest-reorder - изменяем порядок исполнения тестов unittest pytest tests

Модуль позволяет настроить порядок исполнения тестов исходя из их названий. Вы можете разделить тесты на unit, интеграционные.

  django-hackathon-starter - шаблон Django с кучей вкусняшек django boilerplate hackathon

Этот boilerplate/Шаблон реализует поддержку различных соц.сетей, прикручен Django Rest Framework, документация и много чего еще.

  pia - делаем цепочки requests вызовов

Модуль позволяет реализовать цепочки http запросов, например, достать данные из одного источника, а затем эти данные послать в другой сервис

Релизы

  click - 6.5

Фреймворк для простого создания интерфейсов командной строки.. Изменения описаны по ссылке https://allmychanges.com/p/python/click/#6.5. Скачать можно по ссылке: https://pypi.python.org/pypi/click/

  gevent - 1.1.1

Библиотека для Python, которая позволяет вам писать асинхронные сетевые приложение использую синхронный API. Изменения описаны по ссылке https://allmychanges.com/p/python/gevent/#1.1.1. Скачать можно по ссылке: http://pypi.python.org/pypi/gevent/

  mock - 2.0.0

Python модуль для создания заглушек (mock-объект) при тестировании. Изменения описаны по ссылке https://allmychanges.com/p/python/mock/#2.0.0. Скачать можно по ссылке: http://pypi.python.org/pypi/mock/

  PyCharm 2016.1.2 PyCharm IDE

Исправление важного бага

  Anaconda 4.0 Anaconda

В 4.0 версии появился навигатор для запуска модулей