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

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


Новый материал в ленте
  lxml - 5.0.2

Мощный и быстрый модуль для обработки XML/HTML. Скачать можно по ссылке: https://pypi.python.org/pypi/lxml/


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

(17.12.2018 - 23.12.2018)

поделиться выпуском 
Дайджест python,

Статьи

  Модульное тестирование и Python

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

  Pylint изнутри. Как он это делает

Разные помощники в написании классного кода нас просто окружают, линтеры, тайпчекеры, утилиты для поиска уязвимостей, всё с нами. Мы привыкли и используем не вдаваясь в детали, как «черный ящик». Например, мало кто разбирается в принципах работы Pylint — одного из таких незаменимых инструментов для оптимизации и улучшения кода на Python.

  Без BDFL: кто теперь направит Python?

Кто и как будет задавать курс Питону теперь, когда ван Россум сложил с себя полномочия.

  Книга «Как устроен Python. Гид для разработчиков, программистов и интересующихся»

У нас недавно вышла новая книга про «Python». Предлагаем сразу ознакомится с ознакомительным материалом.

  О чем говорит YouTube

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

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

  Как оптимизировать Django REST Viewsets

Базовая диагностика тормозов

  История одного эксперимента с Cython и C++ vector

Одним холодным зимним вечером, хотелось согреться в офисе и проверить теорию одного коллеги, что C++ vector мог бы быстрее справиться с задачей, чем CPython list.
В компании мы разрабатываем продукты на базе Django и случилось так, что нужно было обработать один большой массив словарей. Коллега предположил, что реализация на C++ была бы гораздо быстрее, а меня не покидало чувство, что Гвидо и сообщество наверное немного круче нас в Си и возможно уже решили и обошли все подводные камни, реализовав всё гораздо быстрее.
Для проверки теории, я решил написать небольшой тестовый файл, в котором решил прогнать в цикле вставку 1М словарей одинакового содержания в массив и в vector 100 раз подряд.
Результаты хоть и были ожидаемые, но так же и внезапные.

  Знакомство с тестированием в Python. Ч.1

Это руководство для тех, кто уже написал классное приложение на Python, но еще не писал для
них тесты.

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

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

  Введение в аннотации типов Python

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

  Отображение изображений в админ панели на примере пользовательского профиля

Для улучшения возможности отображения информации о пользователях в административной панели сайта, реализовал возможность отображения аватаров пользователей, как в специальной модели UserProfile, которая имеет One-To-One отношение к модели User, так и в самой модели User добавил отображение аватарки через inline форму.

  Multi-page SPA на Питоне

Сова – это нано-фреймворк, который можно встроить в другие фреймворки.

Идея делать сайты на Питоне с прорисовкой на React не нова. Есть замечательный фреймворк https://plot.ly/products/dash/, зачем еще что-то делать?
Объясняю: Сова не рассчитана на разработку сайтов. Это инструмент для замены толстых клиентов на приложения, работающие через браузер (десктопные приложения).

  Python и Django Logging

Как устроено и работает логгирование в Django

  Знакомство с Тестированием в Python. Ч. 2

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

  Машинное обучение на Python-е с интерактивными Jupyter демонстрациями

Недавно я запустил репозиторий Homemade Machine Learning, который содержит примеры популярных алгоритмов и подходов машинного обучения, таких как линейная регрессия, логистическая регрессия, метод K-средних и нейронная сеть (многослойный перцептрон). Каждый алгоритм содержит интерактивные демо-странички, запускаемые в Jupyter NBViewer-e или Binder-e. Таким образом у каждого желающего есть возможность изменить тренировочные данные, параметры обучения и сразу же увидеть результат обучения, визуализации и прогнозирования модели у себя в браузере без установки Jupyter-а локально.

  [Перевод] Годные туториалы на YouTube

На YouTube много бесплатных обучающих и курсов и туториалов.

Видео

  Госуслуги в формате диалогов с чат-ботами. Real-time приложение с чат-ботами на Python

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

  Что внутри у питона: откуда быть пошел async

В этой части мы сконцентрируем внимание на процессе интерпретации. Подробно разберем внутренние структуры интерпретатора. Рассмотрим, как в язык добавили слово async, и какие изменения в виртуальной машине пришлось сделать для этого

  Python Junior подкаст. Про женщин в IT

В гостях у подкаста Ксения Сухова, датасайентист из ДомКлик. Мы поговорили с Ксенией о карьере женщин в IT и связанных с этим проблемах.