Собрали в одном месте самые важные ссылки
консультируем про IT, Python
http клиент/сервер для asyncio. Скачать можно по ссылке: https://pypi.python.org/pypi/aiohttp
(30.11.2015 - 06.12.2015)
После 10 с половиной месяцев труда разработчики наконец-то выпустили релизную версию Django 1.9.
По ссылке вы можете ознакомиться со всеми изменениями во всех подробностях, но из самого вкусного можно сразу отметить:
Питонисты Новосибирска, приглашаем вас на встречу сообщества Python сообщества — PyNSK.
12-го декабря (суббота) состоится пятая встреча. Она пройдет в новом для нас месте — Культурный Центр «Этаж» и начнется 13-00.
На встрече вас ждет море общения и 2 доклада
Сегодня я расскажу вам о небольшой части большого проекта — World of Tanks. Многие из вас, наверное, знают World of Tanks со стороны пользователя, я же предлагаю взглянуть на него с точки зрения разработчика. В этой статье речь пойдет об эволюции одного из технических решений проекта, а именно — передаче и обработке результатов боя.
Статья описывает соображения про систему импорта.
Автор рассматривает возможность избавиться глобального состояния, расширение возможностей импорта и другие идеи.
Статья описывает как реализовать конвейер вычислений. На подобии этого:
Статья рассказывает применение анализа данных для вычисления удачных дней для сервфинга
Видео со свежего Moscow Python митапа. Как не превратить свой проект в груду урлов? Как не потерять расширяемость с ростом кодовой базы? Как писать поддерживаемый код? Об этих проблемах и их возможных решениях на примере Django расскажет и покажет Малышев Артем.
Список актуальных учебных материалов для обучения студентов.
Есть как полные курсы, так и отдельные уроки.
Не секрет, что Python (CPython) - динамически типизируемый язык (все типы выясняются во время выполнения программы). Это как дар так и проклятие. С одной стороны - можно быстрее писать программы, с другой - тяжелее найти ошибки. При этом, если была бы статическая типизация - уже на этапе компиляции мы знали бы где мы затупили с типами.
В русскоязычном Python Андрей Власовских из Jetbrains наиболее часто говорит об этой концепции. Представляю сборку материалов от этого докладчика:
Оповещения - это зло для продуктивности, но без них тяжело. Сервер упал - как узнать об этом мгновенно? СМС, письмо на email, оповещение на рабочем столе.
К сожалению, без Qt, Wx и других фреймворков кроссплатформенные оповещения не сделать. Поэтому рассмотрим только Linux. Для linux есть библиотека libnotify и обязка для нее python-notify
Сейчас редкий проект обходится без базы данных. Это может быть реляционная БД, или NoSQL, да может просто текстовые файлы. И каждый раз возникает необходимость посмотреть данные в ней, а иногда и другим показать.
Видео со свежего Moscow Python митапа. В python 3.4 появился asyncio. До сих пор многие разработчики не знают, что это такое, как реализуется асинхронность в Python и в чем её сильные и слабые места. Повторим пройденное и заглянем под капот.
Gitter - это система для создания чатов для пользователей Github. Чаты бесплатны, есть интеграция с Github, есть API - что еще для небольшого чата надо?
Сегодня мы научимся писать в чат с помощью API. В заголовке отметил, что будем писать от своего лица, поэтому будет все просто.
Python поддерживает интересный синтаксис, позволяющий определять небольшие однострочные функции на лету. Позаимствованные из Lisp, так называемые lambda-функции могут быть использованы везде, где требуется функция.
Хочется поделиться ссылкой на статью - https://zxmd.wordpress.com/2013/05/23/django_signals/
Что такое сигнал в Django Framework ?
На бытовом уровне это система (диспетчер сигналов) которая обрабатывает некоторые виды событий которые генерирует система. По сути система сигналов разделяется на два компонента:
sender — компонент посылающий сигнал;
receiver — компонент отвечающий за обработку сигнала. ...
PIL - мощная библиотека для работы с изображениями. С помощью этой библиотеки можно выделять необходимые части картинок, конвертировать между форматами, рисовать, накладывать слои.
В качестве наложения слоев хочется привести удачно позаимствованный пример наложения водяного знака на изображение
LOGGING = { 'handler': { 'mongolog': { 'level': 'WARN', 'class': 'mongolog.MongoLogHandler', 'connection': 'mongodb://localhost:27017/' }, }, 'loggers': { 'django': { 'handlers': ['console', 'mongolog'], 'level': 'DEBUG', 'propagate': True }, }, }
musicbot - позволяет сохранять музыку в Telegram, а затем прослушивать с других Telegram-клиентов
Инструмент позволяет скачивать видео с сервиса Periscope
Модуль позволяет извлечь дату из html страниц. Работает на регулярке и мелких эвристиках. Результативность не очень высокая.
Простой web-фреймворк. Фреймворк написан на голом Python и подходит для изучения строения подобных проектов.
import numpy as np
from numpngw import write_png
# Example 1
#
# Create an 8-bit RGB image.
img = np.zeros((80, 128, 3), dtype=np.uint8)
grad = np.linspace(0, 255, img.shape[1])
img[:16, :, :] = 127
img[16:32, :, 0] = grad
img[32:48, :, 1] = grad[::-1]
img[48:64, :, 2] = grad
img[64:, :, :] = 127
write_png('example1.png', img)
Confit - предоставляет общий API для конфигов. Конфиги можно комбинировать из нескольких файлов.
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)
import os from aiotg import TgBot bot = TgBot(os.environ["API_TOKEN"]) @bot.command(r"/echo (.+)") def echo(chat, match): return chat.reply(match.group(1)) if __name__ == '__main__': bot.run()
Проект добавляет синтаксический сахар для упрощения тестирования конфигов, уровней доступа и других параметров на ваших серверах.
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])
Модуль позволяет обнаруживать в аудио-дорожке сегменты с необходимыми параметрами.
Django-приложение, которое облегчает перевод Django-проектов. Изменения описаны по ссылке https://allmychanges.com/p/python/django-rosetta/#0.7.8. Скачать можно по ссылке: https://pypi.python.org/pypi/django-rosetta
Библиотека и утилита для генерации .pex (Python EXecutable) файлов. Изменения описаны по ссылке https://allmychanges.com/p/python/pex/#1.1.1. Скачать можно по ссылке: https://pypi.python.org/pypi/pex
Система контроля и управления процессами. Изменения описаны по ссылке https://allmychanges.com/p/python/supervisor/#3.2.0. Скачать можно по ссылке: http://pypi.python.org/pypi/supervisor/
Добавляет в модели Django дополнительное поле PhoneNumberField которое будет автоматически валидировать телефонный номер.. Изменения описаны по ссылке https://allmychanges.com/p/python/django-phonenumber-field/#1.0.0. Скачать можно по ссылке: https://pypi.python.org/pypi/django-phonenumber-field/
Красивые картинки на скатерти Улама
The Practical Guide to Scaling Django
Функция property() в Python: добавляем управляемые атрибуты в классы
ИИ в Крипто-Торговле: Возможен ли Успех? (Часть 1)
How to migrate your Poetry project to uv
Python Bytes: #410 Entering the Django core
Python REST API: Flask, Connexion и SQLAlchemy (часть 2)
Chronos от Amazon: революция в обработке временных рядов
Двусвязный список в Python: простой инструмент для сложных задач
Дообучаем языковую модель GPT2 с помощью Torch
Мой первый и неудачный опыт поиска торговой стратегии для Московской биржи