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

Собрали в одном месте самые важные ссылки
консультируем про IT, Python

     15.04.2019       Выпуск 278 (15.04.2019 - 21.04.2019)       Статьи

Введение в библиотеку Python lxml

lxml – это библиотека, которая позволяет легко обрабатывать XML и HTML файлы, а также может использоваться для парсинга веб-страниц. Существует множество готовых парсеров XML/HTML, но для получения лучших результатов или при определенных задачах разработчики вынуждены писать свои собственные парсеры. Это как раз та ситуация когда возникает необходимость в lxml библиотеке. Ключевые преимущества этой библиотеки заключаются в том, что она проста в использовании, чрезвычайно быстра при анализе больших документов, очень хорошо документирована и обеспечивает простое преобразование исходных данных в типы данных Python, что упрощает манипулирование файлами.

     15.04.2019       Выпуск 278 (15.04.2019 - 21.04.2019)       Статьи

Основы Natural Language Processing для текста

Обработка естественного языка сейчас не используются разве что в совсем консервативных отраслях. В большинстве технологических решений распознавание и обработка «человеческих» языков давно внедрена: именно поэтому обычный IVR с жестко заданными опциями ответов постепенно уходит в прошлое, чатботы начинают все адекватнее общаться без участия живого оператора, фильтры в почте работают на ура и т.д. Как же происходит распознавание записанной речи, то есть текста? А вернее будет спросить, что лежит в основе соврменных техник распознавания и обработки? На это хорошо отвечает наш сегодняшний адаптированный перевод – под катом вас ждет лонгрид, который закроет пробелы по основам NLP. Приятного чтения!

     14.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Сводка новостей от pythonz.net: 07.04.2019 — 14.04.2019

А теперь о том, что происходило в последнее время на других ресурсах.

     12.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Не ORMом единым

Я руковожу отделом партнерской разработки (Partners Development) в сервисе бронирования отелей Ostrovok.ru. В этой статье я хотел бы рассказать про то, как на одном проекте мы использовали Django ORM.

     12.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Подсчитываем энергобюджет радиолинии для спутника формата CubeSat

Думаю, нужно коротко пояснить, почему вдруг такая, казалось бы, тривиальная тема с подсчетом энергобюджета и почему именно спутники CubeSat? Ну, здесь всё достаточно просто: моя короткая педагогическая практика показала (мне), что тема эта хоть и базисная, но далеко не всеми с первого раза понимаемая, а более того имеющая несколько неочевидных в первом прочтении вопросов. Тем более, что, казалось бы, по таким базовым вещам до сих пор публикуют статьи в IEEE и делают это далеко не студенты. Почему именно CubeSat? Здесь всё ещё проще: формат спутника интересный (сам факт существования микро- и наноспутников, как выяснилось, повергает многих в состояние короткого шока), а потому как нельзя кстати подходящий для учебных целей.

     12.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Иллюзия иммутабельности и доверие как основа командной разработки

Вообще я C++ программист. Ну так получилось. Подавляющее большинство коммерческого кода, который я написал за свою карьеру, — это именно C++. Мне не очень нравится такой сильный перекос моего личного опыта в сторону одного языка, и я стараюсь не упускать возможности написать что-нибудь на другом языке. И мой текущий работодатель внезапно такую возможность предоставил: я взялся сделать одну не самую тривиальную утилиту на Java. Выбор языка реализации был сделан по историческим причинам, да я и не возражал. Java так Java, чем менее мне знакомо — тем лучше.

     11.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Использование Google Lighthouse для аудита веб-приложений

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

     10.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Расширение mypy с помощью плагинов

Известно, что Python – язык с динамической типизацией. Очень просто писать DSL-подобные фреймворки, которые трудно разобрать инструментами статичной проверки типа. Несмотря на это, с помощью последних функциональных новшеств mypy, таких как protocols и literal types, а также с базовой поддержкой метаклассов и поддержкой дескриптора, мы можем чаще получать точные типы, однако по прежнему трудно избежать ложных срабатываний и других негативных факторов. Чтобы решить эту проблему и избежать необходимости кастомизировать систему типов для каждого фреймворка, mypy поддерживает систему плагинов.

     10.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Алгоритмы сортировки в Python

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

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

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

     10.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Процессим биткоин. Как устроена страница оплаты в B2BinPay

B2BinPay — криптовалютная платежная система с множеством связанных бэкэндов приложений, аналитики, нод, очередей, но лишь одной UI-страницей, которую видит конечный пользователь. К ней предъявляются высокие требования относительно удобства в использовании. Несмотря на кажущуюся простоту страницы, команде разработчиков было бы интересно поделиться тем, как она устроена изнутри.

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

     09.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Как работает цикл for в Python

В этой статье мы разберем, работу цикла for в Python.

Мы начнем с пары основных примеров и их синтаксиса. Далее обсудим, когда может быть полезен блок else, связанный с циклом for. Затем мы разберем итерактивные объекты (iterable), итераторы (iterator) и протокол итератора. Также узнаем, как создавать собственные итераторы и итерируемые объекты. После этого мы обсудим, как цикл for реализован с использованием итерактивных объектов и итераторов. Потом мы рассмотрим реализацию логики цикла for, используя цикл while и используя протокол итератора.
И наконец, для тех, кому интересно, мы разберем простой цикл for и пройдемся по инструкциям, которые интерпретатор Python выполняет при выполнении цикла for. Это должно помочь понять, что именно происходит внутри, во время работы цикла for.

     09.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Прорабатываем навык использования группировки и визуализации данных в Python

Сегодня будем прорабатывать навык использования средств группирования и визуализации данных в Python. В предоставленном датасете на Github проанализируем несколько характеристик и построим набор визуализаций.

     09.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Подборка @pythonetc, март 2019

Это десятая подборка советов про Python и программирование из авторского канала @pythonetc.

     09.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

[Из песочницы] Unittest и абстрактные тесты

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

     09.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Для чего и как мы скрываем госномера автомобилей в объявлениях Авито

В конце прошлого года мы стали автоматически скрывать номера автомобилей на фотографиях в карточках объявлений на Авито. О том, зачем мы это сделали, и какие есть способы решения таких задач, читайте в статье.

     08.04.2019       Выпуск 277 (08.04.2019 - 14.04.2019)       Статьи

Введение в тестирование в Python

Перевод статьи  Anthony Shaw: Getting Started With Testing in Python Статья будет интересна тем кто еще мало знаком с тестированием в Python и быстро получить обзорные знания для дальнейшего изучения.

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

     07.04.2019       Выпуск 276 (01.04.2019 - 07.04.2019)       Видео

Python Junior подкаст. От джуна до тимлида за 4 года

Эволюция программиста лучше всего видна на личном опыте. И не нужно бояться того, что эволюция эта может быть стремительной. Мы позвали в Python Junior старшего разработчика компании «Код Безопасности» Александра Полищука и поговорили с ним о том, как извлечь пользу из собеседований, которые вы, как вам кажется, завалили, как не растерять запал на ранних стадиях карьеры, какие личные качества и лайфхаки помогают быстрее и эффективнее совершенствоваться в IT.

     05.04.2019       Выпуск 276 (01.04.2019 - 07.04.2019)       Статьи

Использование Python для формирования отчетов в отдельно взятой компании

Эта история случилась в реальной компании, несмотря на то, что некоторые имена и события вымышлены.

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

Хитрым глазом смотрело начальство на менеджера по продажам и вопрошало: а что ты сделал сегодня для Родины. Продавец отвечал: провел столько то встреч, предлагал услуги стольким то людям. Руководство пришло к Славе и говорит: скажи, правду ли говорят сотрудники или так, отсебятину несут. Нужна статистика.