Size: a a a

2015 December 03
PythonDigest
Движок интернет магазина на django

https://www.shoop.io/

Первое впечатление намного лучше чем от django-oscar
источник
PythonDigest
auditok - модуль для Audio/Acoustic Activity Detection

http://pypi.python.org/pypi/auditok/

Модуль позволяет обнаруживать в аудио-дорожке сегменты с необходимыми параметрами.
источник
PythonDigest
[Видео] Пишем web-проекты: Гексагональная архитектура в приложениях Django

http://pynsk.ru/posts/2015/Dec/02/pishem-web-proekty-geksagonalnaia-arkhitektura-v-prilozheniiakh-django/

Видео со свежего Moscow Python митапа.
Как не превратить свой проект в груду урлов? Как не потерять расширяемость с ростом кодовой базы? Как писать поддерживаемый код? Об этих проблемах и их возможных решениях на примере Django расскажет и покажет Малышев Артем.
источник
2015 December 04
PythonDigest
Пишем web-проекты: django сигналы

http://pynsk.ru/posts/2015/Dec/02/pishem-web-proekty-django-signaly/

Хочется поделиться ссылкой на статью - https://zxmd.wordpress.com/2013/05/23/django_signals/

Что такое сигнал в Django Framework ?

На бытовом уровне это система (диспетчер сигналов) которая обрабатывает некоторые виды событий которые генерирует система. По сути система сигналов разделяется на два компонента:

sender — компонент посылающий сигнал;

receiver — компонент отвечающий за обработку сигнала. ...
источник
PythonDigest
Интересные концепции: опциональная статическая типизация

http://pynsk.ru/posts/2015/Dec/01/interesnye-kontseptsii-optsionalnaia-staticheskaia-tipizatsiia/

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

В русскоязычном Python Андрей Власовских из Jetbrains наиболее часто говорит об этой концепции. Представляю сборку материалов от этого докладчика:
источник
PythonDigest
Python на службе народа: добавляем водяной знак на изображение

http://pynsk.ru/posts/2015/Dec/01/python-na-sluzhbe-naroda-dobavliaem-vodianoi-znak-na-izobrazhenie/

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

В качестве наложения слоев хочется привести удачно позаимствованный пример наложения водяного знака на изображение
источник
PythonDigest
django-rosetta - 0.7.8

https://allmychanges.com/p/python/django-rosetta/#0.7.8

Django-приложение, которое облегчает перевод Django-проектов. Изменения описаны по ссылке https://allmychanges.com/p/python/django-rosetta/#0.7.8. Скачать можно по ссылке: https://pypi.python.org/pypi/django-rosetta
источник
2015 December 05
PythonDigest
prwlock -  многопоточный reader-writer lock

http://pypi.python.org/pypi/prwlock/

from prwlock.prwlock import RWLock

rwlock = RWLock()

from __future__ import print_function

import os
import time

from multiprocessing import Pool
from prwlock.prwlock import RWLock
def f(rwlock):
   for i in range(2):
       print(os.getpid(), 'Acquiring read lock')
       rwlock.acquire_read()
       print(os.getpid(), 'Sleeping for a while')
       time.sleep(1)
       print(os.getpid(), 'Releasing lock')
       rwlock.release()
       time.sleep(.1)

r = RWLock()
children = 20
pool = Pool(processes=children)
for child in range(children):
   pool.apply_async(f, [r])
источник
PythonDigest
API всему голова: gitter api - пишем в чат от своего лица

http://pynsk.ru/posts/2015/Dec/03/api-vsemu-golova-gitter-api-pishem-v-chat-ot-svoego-litsa/

Gitter - это система для создания чатов для пользователей Github. Чаты бесплатны, есть интеграция с Github, есть API - что еще для небольшого чата надо?

Сегодня мы научимся писать в чат с помощью API. В заголовке отметил, что будем писать от своего лица, поэтому будет все просто.
источник
PythonDigest
netlib - набор утилит для сети для pathod и mitmproxy

http://pypi.python.org/pypi/netlib/
источник
PythonDigest
monkeylearn - официальный клиент для MonkeyLearn API

http://pypi.python.org/pypi/monkeylearn/
источник
PythonDigest
История одной оптимизации: передача и обработка результатов боя

http://habrahabr.ru/post/272265/

Сегодня я расскажу вам о небольшой части большого проекта — World of Tanks. Многие из вас, наверное, знают World of Tanks со стороны пользователя, я же предлагаю взглянуть на него с точки зрения разработчика. В этой статье речь пойдет об эволюции одного из технических решений проекта, а именно — передаче и обработке результатов боя.
источник
PythonDigest
django-mongolog - логгер в mongo

http://pypi.python.org/pypi/django-mongolog/

LOGGING = {
   'handler': {
       'mongolog': {
           'level': 'WARN',
           'class': 'mongolog.MongoLogHandler',
           'connection': 'mongodb://localhost:27017/'
       },
   },
   'loggers': {
       'django': {
           'handlers': ['console', 'mongolog'],
           'level': 'DEBUG',
           'propagate': True
       },
   },
}
источник
PythonDigest
Если бы я проектировал механизм импорта с нуля

http://www.snarky.ca/if-i-were-designing-imort-from-scratch

Статья описывает соображения про систему импорта. 

Автор рассматривает возможность избавиться глобального состояния, расширение возможностей импорта и другие идеи.
источник
PythonDigest
wavio - чтение, запись 24-битный WAV файлов с помощью numpy arrays

http://pypi.python.org/pypi/wavio/

import numpy as np
import wavio

rate = 22050  # samples per second
T = 3         # sample duration (seconds)
f = 440.0     # sound frequency (Hz)
t = np.linspace(0, T, T*rate, endpoint=False)
x = np.sin(2*np.pi * f * t)
wavio.write("sine24.wav", x, rate, sampwidth=3)
источник
PythonDigest
Emacs - лучший Python редактор?

https://realpython.com/blog/python/emacs-the-best-python-editor/

Статья описывает применение Emacs в качестве редактора для Python
источник
PythonDigest
Анализ данных: волны для серфинга на восточном побережье Ирландии

http://marcoforte.github.io/blog/2015/30/11/Data-analysis-of-Surfing-Conditions-on-Irish-East-Coast/

Статья рассказывает применение анализа данных для вычисления удачных дней для сервфинга
источник
PythonDigest
[Видео] Пишем Doodle Jump на Python [Time Lapse]

https://www.youtube.com/watch?v=Qe_KWbyxno0
источник
2015 December 06
PythonDigest
Python на службе народа: оповещения в Linux

http://pynsk.ru/posts/2015/Dec/04/python-na-sluzhbe-naroda-opoveshcheniia-v-linux/

Оповещения - это зло для продуктивности, но без них тяжело. Сервер упал - как узнать об этом мгновенно? СМС, письмо на email, оповещение на рабочем столе.

К сожалению, без Qt, Wx и других фреймворков кроссплатформенные оповещения не сделать. Поэтому рассмотрим только Linux. Для linux есть библиотека libnotify и обязка для нее python-notify
источник
PythonDigest
Таинство стандартной библиотеки: asyncio в Python. Как устроено и зачем нужно?

http://pynsk.ru/posts/2015/Dec/04/tainstvo-standartnoi-biblioteki-asyncio-v-python-kak-ustroeno-i-zachem-nuzhno/

Видео со свежего Moscow Python митапа. В python 3.4 появился asyncio. До сих пор многие разработчики не знают, что это такое, как реализуется асинхронность в Python и в чем её сильные и слабые места. Повторим пройденное и заглянем под капот.
источник