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

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


Новый материал в ленте
  coverage - 7.6.10

Утилита позволяющая измерить процент покрытия тестами. Скачать можно по ссылке: https://pypi.python.org/pypi/coverage/


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

(28.09.2015 - 04.10.2015)

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

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

  PyNSK #3 — третья встреча Новосибирского Python сообщества

IT-досуг в Новосибирске не отстает от столицы — почти каждую неделю можно пообщаться о технологиях в кругу единомышленников. Для любителей Python организовано сообщество PyNSK. 11-го октября (воскресенье) состоится третья встреча. Она пройдет в анти-кафе «Самовар» и начнется 13-00. На встрече вас ждет море общения и 2 доклада:...

Статьи

  Из книги "500 Lines or Less" - Шаблонизатор

Статья рассказывет про использование шаблонизаторов. Что это и зачем они

  Benchmark JSON библиотек для Python

В сравнении приведены только живые библиотеки, которые поддерживают Python 3

  Рекомендательная система на .Net или первые шаги с MyMediaLite

Пошел я как-то на курсы по BigData, по рекомендации друзей и мне посчастливилось поучаствовать в соревновании. Не буду рассказывать об обучении на курсе, а расскажу о библиотеке MyMediaLite на .Net и о том, как я ее использовал. 

  Random Forests на Python

Random Forests это один из самых популярных методов в машинном обучении. По ссылке вводная статья в этот метод.

  Используем Gabbi и Hypothesis для тестирования Django

Это вводная статья про использование  Gabbi и Hypothesis для тестирования Django-проектов

  SQLAlchemy – основы

Интересная вводная статья про SQLAlchemy

  Python в TextMate 2

Статья описывает как начать использовать редактор TextMate2 для Python

  Самые популярные "кулинарные книги" на GitHub

По ссылке найдете список ссылок на "кукбуки" - куча примеров по различным областям применения Python

  Линейное программирование на Python с CVXOPT

Статья описывает как начать использовать Python для задач линейного программирования. Приведено сравнение с PuLP

  Определяем вызывающую функцию из текущей функции

В статье вы найдете практическое применение стека вызовов. Вы сможете узнать как узнать название функции, которая вызвала текущую (родителя), а также функцию которая вызвала родителя. Запутал? Прошу по ссылке.

  Наиболее частые проблемы Python и решения

Перевод статьи «Most Frequent Python Problems and Solution» с сайта pamno.com. Мы проанализировали Stack Overflow на предмет наиболее часто встречающихся проблем и резюмировали ответы. 

  Пробуем JSON в Django и PostgreSQL (и сравниваем с MongoDB)

В Django 1.9 будет добавлено поле JSONField, его можно использовать с базой данных PostgreSQL >= 9.4. Давайте попробуем с ним поработать и оценить, насколько оно удобно.

В данный момент доступна альфа версия django 1.9, финальная запланирована на декабрь 2015. Установить альфа версию можно так:

pip install --pre django

Итак представим, что у нас есть интернет магазин, в котором мы предлагаем товары разных типов. Например, ноутбуки и футболки. Очевидно, что у таких товаров будет разный набор параметров: у футболок будет размер, цвет, а у ноутбуков - размер экрана, частота процессора, объем жесткого диска и прочее. Один из подходов для работы с такими данными в SQL - Entity–attribute–value model (EAV).

  assert_called_once: опасность или угроза

Статья поднимает вопрос правильного использования mock объектов

Видео

  Как PyPy запускает твою программу

Доклад-введение о PyPy. В нем вы найдете опиание основных фишек PyPy и узнаете почему PyPy быстрее CPython

  В чем суть ОО?

Докладчик рассказывает о концепеции объектов в программировании на примере Python

  Тестирование на основе свойств с помощью Hypothesis

Hypothesis - библиотека для fuzzy-testing, которая расширяет возможности модульного тестирования. Доклад именно про это

  Прагматический Python для социальных изменений

Организация Code for South Africa и другие используют Python для социальных проектов. В этом видео вы узнаете КАК и ЗАЧЕМ

  Дорога к непрерывному развертыванию

Докладчик рассказывает как начать использовать Continuous Deployment в разработке. Как выкатить этот механизм в продакшн.

  Введение в классификацию изображений(Image Classification)

Этот урок покажет как можно провести классификацию изображений на основе текстурных методов: (Grey Level Co-occurrence Matrix(GLCM), Local Binary Pattern(LBP) и Local Directional Pattern(LDP)) Classification используя Support Vector Machine (SVM) и Naive Bayes(NB)

  Автоматизация обработки данных в науке

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

  Дискуссия: "Python в продакшн"

  • Andy Rabagliati (CSIR / CHPC)
  • Bryn Divey (Oracle)
  • Colin Alston (Praekelt)
  • Milton Madanda (Praekelt)
  • Stefano Rivera (Debian Developer)

Рассуждают на тему "Python в продакшн"

  Split-Apply-Combine паттерн для Data Science в Python

Доклад про паттерн Split-Apply-Combine, который применятся в обработке данных

  Мини-доклады на PyCon ZA 2015: четверг

  • (0:00:00) Racy interrupt handling by Bruce Merry
  • (0:06:00) Vulture in Python by Philip Sterne
  • (0:11:09) Edx by Carl Dawson
  • (0:17:39) AST linting by Bryn Divey
  • (0:24:33) Numpy in Anger! by Laura Richter
  • (0:29:28) How to screw up loading CSVs in Python by James Saunders
  • (0:33:34) PyQuery by Nicholas Spagnoletti
  • (0:37:27) Debian Python moves kicking and screaming to Git by Stefano Rivera

  Мини-доклады на PyCon ZA 2015: пятница

  • (0:00:00) Using Odo to load data by Tobias Brandt
  • (0:05:23) Sh by Adrianna Pińska
  • (0:08:44) Pygame Zero by Neil Muller
  • (0:11:57) How not to hate Javascript by Adam Jorgensen
  • (0:16:28) Testing code examples from your slides by Jeremy Thurgood

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

  intro2stats - введение в статистику на Python

Репозиторий содержит несколько notebook, которые расскажут как начать программировать на Python для целей статистики.

Колонка автора

  Hardcore Python: Python и Real-time?

Возможно!
Рассказ "Управление памятью в real-time приложениях Python" Антона Патрушева покажет как можно писать Python приложения с максимально быстрым откликом.

 Таинство стандартной библиотеки: Магические методы в Python

Статья от Rafe Kettler.
Что такое магические методы?
Они всё в объектно-ориентированном Питоне. Это специальные методы, с помощью которых вы можете добавить в ваши классы «магию». Они всегда обрамлены двумя...[Продолжение]

  Таинство стандартной библиотеки: multiprocessing

GIL Python снимает множество головной боли с программиста, но и не дает малой кровью использовать всю мощь CPU.
А что если реально надо быстрее исполнить код? Например, надо сделать 1000 запросов в web.
Можно...[Продолжение]

  Синтаксис Python: frozenset - морозное множество

frozenset и set, это как кортеж (tuple) и список. Первые являются неизменяемыми, вторые изменяемые.
Иммутабельные(неизменяемые) структуры данных - это коллекции, которые нельзя изменить. Примерно как числа. Число...[Продолжение]

  Полезные инструменты: pythontutor.com

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

 Таинство стандартной библиотеки: logging

Logging — библиотека для удобного ведения логов в Python
В любой разработке приходится рано или поздно вести логи, ведь не отдашь же заказчику программу где отладочные сообщения выводятся с помощью print, да и в...[Продолжение]

  Полезные инструменты: pylint - в поисках ошибок

Статический анализ кода — анализ кода без реального исполнения кода.
Под словом "анализ" можно понимать многое - что код соответствует PEP8, что код безопасный (все типы верно приведены), что код не содержит...[Продолжение]

  Полезные библиотеки: langid.py

Представим ситуацию: есть блог, в котором публикуются посты на двух языках (а может и на 10). Необходимо рассортировать посты по языкам в разные RSS. (постов очень много, пускай 1000)
Вопрос к аудитории - как вы...[Продолжение]

  Интересные концепции: mixin'ы (примеси)

В определенных случаях множественное наследование это зло.
Добро - когда классы родители не перекрывают друг друга. Частный случай такой схемы - примиси == миксины == mixin == mix in.
Концепция примисей...[Продолжение]

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

  tasktiger - простая очередь задач с Redis

Это простая альтернатива Celery.

  procedural_city_generation - генерируем карту города с Python и Blender

Проект позволяет создать сгенерировать карту городу

  user_agent - User-Agent header генератор

Модуль позволяет генерировать различные User-Agent

  doit - менеджер задач и утилита автоматизации

doit - это современный, с открытым исходным кодом инструмент, написанный на Python. Утилита позволяет построить цепочку вызовов различных программ, тем самым автоматизировать какой-то рутинный процесс

  Calamari - простой, расширяемый чат-бот

Бот умеет работать с XMPP(Jaber), IRC

  invatar - API на основе GET для генерации изображений

Сервис позволняет на основе параметров генерировать изображение. Например:.

svg/kb.jpg?s=150&color=yellow

  flask-scaffolding - шаблон проекта на Flask с Python 3.4, SQLALCHEMY, BackboneJS, RequireJS

Репозиторий представляет шаблон проекта со всем фаршем для запуска Flask + Python 3.4, "алхимия" и несколько JS библиотек.

  graphene - GraphQL для Python

GraphQL - разработка Facebook, язык формирования запросов, протокол для эффективного получения данных. GraphQL сочетает высокую гибкость, достаточную для описания всех потоков данных в Facebook.
А эта библиотека - это простой способ начать его использовать

Релизы

  aiohttp - 0.17.4

http клиент/сервер для asyncio. Изменения описаны по ссылке https://allmychanges.com/p/python/aiohttp/#0.17.4. Скачать можно по ссылке: https://pypi.python.org/pypi/aiohttp/