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

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

     23.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

О декораторах в Python

Когда вы упражнялись в программировании на языке Python, вы, должно быть сталкивались с таким понятием, как декораторы. Они являются одним из самых элегантных и часто используемых инструментов в современных библиотеках и фреймворках. Декораторы — хороший способ инкапсулировать множество деталей реализации, оставляя на поверхности простой интерфейс.

     23.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

Деплоим ML проект, используя Flask как REST API, и делаем доступным через приложение на Flutter

Машинное обучение уже везде и, пожалуй, почти невозможно найти софт, не использующий его прямо или косвенно. Давайте создадим небольшое приложение, способное загружать изображения на сервер для последующего распознавания с помощью ML. А после сделаем их доступными через мобильное приложение с текстовым поиском по содержимому.

 

Мы будем использовать Flask для нашего REST API, Flutter для мобильного приложения и Keras для машинного обучения. В качестве базы данных для хранения информации о содержимом изображений используем MongoDB, а для получения информации возьмём уже натренированную модель ResNet50. При необходимости мы сможем заменить модель, используя методы save_model() и load_model(), доступные в Keras. Последний потребует около 100 Мб при первоначальной загрузке модели. Почитать о других доступных моделях можно в документации.

     23.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

Выписки из Росреестра через ФГИС ЕГРН и python. Часть 1 — образец

У Романа Андреевича Карцева есть неплохой монолог про раков вчерашних по 5 руб. и сегодняшних по 3-и. Будем считать, что прошлый пост был про раков по 5 руб. Так как выписка из ЕГРН по 300 руб., хоть и автоматизированная не каждому по карману, если речь идет о массовых запросах.

В этот раз рассмотрим как получить тот же результат, потратив 400 руб. за 100 выписок из ЕГРН. Наша программа будет выполнять нехитрые манипуляции, заходить на сайт, заполнять за нас все необходимые поля при подаче запроса в Росреестр. Как и в прошлый раз мы не будет использовать api Росреестра.

     22.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Конференции, события, встречи разработчиков

Python Meetup Chelyabinsk #6

8 августа в Челябинске состоится шестой Python-митап. Программа митапа:
— Asynchronous frameworks battle (Алексей Созыкин, Antida software)
— Python в браузере (Алексей Комиссаров, Antida software)
— Как перестать беспокоиться и начать писать автотесты (Юлия Саитгалиева, Fix)

     22.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

Python Celery Guide

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

     22.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

Отчет с PyDaCon meetup в Mail.ru Group, 22 июня

В конце июня, в московском офисе прошел митап на котором собрали 2 секции: доклады по Python, состав которого был сформирован на основе общего списка докладов к PyCon Russia и PyData-трек от PyData Moscow meetup. Под катом собрали презентации, записи докладов и небольшие комментарии.

     20.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Статьи

Подборка рабочих примеров обработки данных

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

     20.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Видео

Django внутри Django: framework для чатботов

Михаил Новиков (Fasttrack, Тимлид)

С одной стороны — это доклад о том, как построить low-code платформу на базе Django Template Language, сделать ее безопасной и дать пользователям описывать бизнес-процессы на языке джанго-шаблонов. С другой — это рассказ для продвинутых (и не очень) разработчиков, как можно извратить джангу и пользоваться абсолютно всеми ее компонентами не по назначению☺ мы переписали роутер, urlconf, middleware, написали свою систему вьюх, свой template engine на базе родного джанговского и тд. Полезное для слушателей — на примере нашего "Django внутри Django" я расскажу о кишках самой джанги, об интересных паттернах, которые в ней применяются (например, миддлвары, которые начиная с версии 2 сделаны в функциональном стиле), об инсайтах по оптимизации (например, оказывается, резолв по урезанной части urlconf’а примерно в 10 раз быстрее резолва по полному urlconf’у) и так далее

     20.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Видео

Готовь sanic летом

Алексей Чирков (ведущий разработчик, Domclick)

Sanic — один из самых популярных web-фрейморков для Python. Попробуем разобраться почему он таким стал и как его готовить. В докладе будут рассмотрены основные принципы построения REST сервиса, затронуты вопросы валидации входных данных, сериализации результата. Доклад будет интересен для разработчиков python уровня junior/middle, желающих получить практические навыки разрабтки асинхронных web-сервисов
 

     20.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Статьи

Простое шифрование текста — кортежем цифр, с регулированием сложности

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

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

Сам ключ храниться в .json поэтому отправить, посмотреть, редактировать его просто.

     19.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Статьи

Оптимальная линейная фильтрация: от метода градиентного спуска до адаптивных фильтров

Развивая тему конспектов по магистерской специальности "Communication and Signal Processing" (TU Ilmenau), продолжить хотелось бы одной из основных тем курса "Adaptive and Array Signal Processing". А именно основами адаптивной фильтрации.

     19.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Статьи

Вероятность того, что 2 шахтёра имеют одинаковый мир

Недавно меня заинтересовал вопрос: «может ли быть такое, что 2 игрока в Minecraft имеют один и тот же одиночный мир?»

Дело в том, что мир Minecraft генерируется случайным образом из заданного семени. Его можно задать вручную или получить казённый псевдослучайный. Стоит отметить, что одно и то же семя генерирует один и тот же мир.

     19.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Статьи

Управление конечным автоматом с использованием Django FSM

Представьте себе приложение типа JIRA со сложным рабочим процессом. Для создания такого приложения требуется поддержка управления конечным автоматом. Если вы создаете свое приложение с помощью Django, Django FSM предоставляет вам готовую поддержку для управления конечным автоматом.

Предположим, что наше приложение имеет следующий рабочий процесс выполнение Task.

     19.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Статьи

Безумный конвертер GIF'ок в анимированные стикеры для Telegram

xZibit тоже рад, ведь здесь GIF вставлены в стикеры, чтобы быть вставлеными в GIF для КДПВ!

А теперь о подробностях реализации.

Всё началось с дискуссии в чатике Telegram-разработчиков о грядущей фиче

     19.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Статьи

Пишем простую нейронную сеть с использованием математики и Numpy

Зачем очередная статья про то, как писать нейронные сети с нуля? Увы, я не смог найти статьи, где были бы описаны теория и код с нуля до полностью работающей модели. Сразу предупреждаю, что тут будет много математики. Я предполагаю, что читатель знаком с основами линейной алгебры, частными производными и хотя бы частично, с теорией вероятностей, а также Python и Numpy. Будем разбираться с полносвязной нейронной сетью и MNIST.

     18.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Учебные материалы

Курс лекций «Основы цифровой обработки сигналов»

Часто ко мне обращаются люди с вопросами по задачам из области цифровой обработки сигналов (ЦОС). Я подробно рассказываю нюансы, подсказываю нужные источники информации. Но всем слушателям, как показало время, не хватает практических задач и примеров в процессе познания этой области. В связи с этим я решил написать краткий интерактивный курс по цифровой обработке сигналов и выложить его в открытый доступ.