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

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

     19.05.2020       Выпуск 335 (18.05.2020 - 24.05.2020)       Статьи

Авторизация пользователя при помощи Starlette + Vue.js

Задача — создать пример авторизации пользователя с использованием фреймворков Starlette (https://www.starlette.io/) и Vue.js *, который был бы максимально комфортным разработчикам Django для «миграции» в асинхронный стек.

Почему Starlette? В первую очередь скорость. Starlette ультимативно быстр, и в тестах уступает только BlackSheep (https://pypi.org/project/blacksheep/). Во вторых Starlette весьма прост и писать на нем в силу его продуманности легко и приятно.

В качестве ORM мы будем использовать Tortoise ORM (со моделями и выборками «аля Django ORM»). В качестве сессионного механизма мы будем использовать JWT.

     19.05.2020       Выпуск 335 (18.05.2020 - 24.05.2020)       Статьи
     19.05.2020       Выпуск 335 (18.05.2020 - 24.05.2020)       Статьи

Как построить диаграмму Венна с 50 кругами? Визуализация множеств и история моего Python-проекта с открытым кодом

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

     19.05.2020       Выпуск 335 (18.05.2020 - 24.05.2020)       Статьи

Как не править Python тесты

И вынести тестируемые результаты вне кода. Это статья об автоматизации и увеличения удобства тестирования на Python.

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

Регрессионное тестирование было одним из шагов для более уверенной разработки. Его суть в сравнении вычисленных данных с последним канонизированным результатом работы программы.

Результаты выполнения можно проверять в python коде тестов. Это близко к контексту выполнения и зачастую удобно.

     18.05.2020       Выпуск 335 (18.05.2020 - 24.05.2020)       Статьи

5 визуализаций, который помогут улучшить Data Story

Сторителлинг – один из важнейших навыков для специалистов, которые занимаются анализом данных. Чтобы доносить идеи и делать это убедительно, нужно простраивать эффективную коммуникацию. В этой статье мы познакомимся с 5 методами визуализации, которые выходят за рамки классического понимания, и могут сделать вашу Data Story более эстетичной и красивой. Работать мы будем с графической библиотекой Plotly на Python (она также доступна на R), которая позволяет создавать анимированные и интерактивные диаграммы с минимальными усилиями.

     18.05.2020       Выпуск 335 (18.05.2020 - 24.05.2020)       Статьи

Материальный Python. Кастомные карточки с OpenGL эффектами

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

     17.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи

Сравниваем работу open source Python — библиотек для распознавания именованных сущностей

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

Для решения это задачи я опробовал десятки решений в области обработки естественного языка, в том числе решения с открытым кодом и хотел бы поделиться опытом работы с open source Python — библиотеками для распознавания именованных сущностей.

     15.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи

Сказка о лишнем и потерянном времени. По версии py3

Несколько недель назад в нашей инфраструктуре я обнаружил небольшую ошибку конфигурации переменной окружения TZ. Исправление этой ошибки нарушило хрупкое равновесие багов во вселенной и графики RPS для одного из проектов в нашем графите буквально сошли с ума. Я расскажу, как гонялся за несколькими часами в течение нескольких дней.

     15.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи
     14.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи

Разбираем EM-algorithm на маленькие кирпичики

В этой статье, как Вы уже, наверное догадались, речь пойдет об устройстве EM-алгоритма. Статья прежде всего может быть интересна тем, кто потихонечку уже вступает в сообщество датасайнтистов. Материал изложенный в статье в большей степени будет полезен тем, кто недавно начал проходить третий курс «Поиск структуры в данных» в рамках специализации «Машинное обучение и анализ данных» от МФТИ и Яндекс.

     14.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи

Кому на бюджете жить хорошо?

Пару месяцев назад на одном IT мероприятии мне довелось лицезреть в работе Pandas. Парень, который с ним работал не делал ничего особенно удивительного. Но простые сложения значений, вычисления средних, группировки производились так виртуозно, что, даже при всей своей предвзятости к Питону, я был очарован. Манипуляции выполнялись на довольно приличных датасетах по данным капитального ремонта за период кажется с 2004 по 2019 год. Сотни тысяч строк, но все работало очень быстро.
В общем когда мне еще через пару месяцев пришлось кое-что анализировать, я решил попробовать сделать это с помощью Pandas. Провозился пару дней с тем, что с помощью Excel я бы смог сделать за день. Тем не менее мне удалось.

     13.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи
     13.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи

Пагинация для телеграм бота на Python

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

     13.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи

Пилим веб-опросник как у Meduza: пошаговый гайд для начинающих

Меня зовут Егор, я Full-stack разработчик в Leader-ID. В этой статье я хочу поделиться простым рецептом по созданию красивого и удобного веб-опросника наподобие тех, что делает Meduza. Он умеет показывать статистику после ответа на отдельные вопросы, подсчитывать общий балл, выдавать комментарии, выгружать данные для анализа и шарить результаты в соцсети. Для реализации этой задачи я выбрал Django, DRF, Python и базу данных PostgreSQL.

     13.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи

Alembic migrations autogeneration

Django-like migrations autogeneration in Alembic

     13.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи

Мобильный eye-tracking на PyTorch

Рынок eye-tracking'а, как ожидается, будет расти и расти: с $560 млн в 2020 до $1,786 млрд в 2025. Так какая есть альтернатива относительно дорогим устройствам? Конечно, простая вебка! Как и другие, этот подход встречает много сложностей, будь то: большое разнообразие устройств (следовательно, сложно подобрать настройки, которые будут работать на всех камерах одинаково), сильная вариативность параметров (от освещения до наклона камеры и ее положения относительно лица), порядочные вычислительные мощности (несколько cuda-ядер и Xeon — самое то)...

     12.05.2020       Выпуск 334 (11.05.2020 - 17.05.2020)       Статьи

Внутри виртуальной машины Python. Часть 1

Я решил наконец-то разобраться, как работает интерпретатор Python. Для этого стал изучать одну статью-книгу и задумал заодно перевести её на русский язык. Дело в том, что переводы не дают тебе пропустить непонятное предложение и качество усвоения материала увеличивается). Заранее прошу извинить меня за возможные неточности. Я всегда стараюсь переводить максимально правильно, но одна из главных проблем: упоминание некоторых терминов в русском эквиваленте просто отсутствует.