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

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

     04.07.2022       Выпуск 446 (04.07.2022 - 10.07.2022)       Статьи

Готовим статьи для Хабра: скрипт для подтягивания адресов картинок с habrastorage

Что самое сложное в написании статьи для Хабра? Конечно же сесть и начать писать! А потом вовремя остановиться. Ну а на третьем месте — во всяком случае для меня — стоит загрузка уже готовой статьи на Хабр. Про новый редактор я тактично промолчу, а старый в принципе весьма неплох: статью в markdown можно скопировать в него почти без изменений. Но вот с добавлением картинок есть пара нюансов.

     04.07.2022       Выпуск 446 (04.07.2022 - 10.07.2022)       Статьи

Как быстро разрабатывать сервисы обработки данных в реальном времени с помощью PySpark Structured Streaming и Kafka

Данная статья обобщает базовые шаги по установке и началу работы с PySpark Structured Streaming при участии брокера сообщений Kafka. Предполагается, что читатель уже знаком с языком программирования Python и сервисом Kafka.При помощи PySpark Structured Streaming можно быстро разрабатывать масштабируемые сервисы обработки данных в реальном времени. Такой подход позволяет в короткие сроки сделать выгодное предложение клиенту, вовремя заметить аномалию в системе или же отображать актуальные данные. 

     04.07.2022       Выпуск 446 (04.07.2022 - 10.07.2022)       Статьи

F-строки в Python мощнее, чем можно подумать

Форматированные строковые литералы, которые ещё называют f-строками (f-strings), появились довольно давно, в Python 3.6. Поэтому все знают о том, что это такое, и о том, как ими пользоваться. Правда, f-строки обладают кое-какими полезными возможностями, некоторыми особенностями, о которых кто-нибудь может и не знать. Разберёмся с некоторыми интересными возможностями f-строк, которые могут оказаться очень кстати в повседневной работе Python-программиста.

     04.07.2022       Выпуск 446 (04.07.2022 - 10.07.2022)       Статьи

Управляем параметрами в процессной аналитике при помощи фреймворка Hydra

Сегодня хочу рассказать про управление параметрами в Process mining (процессная аналитика) и нюансах этой задачи.

Для работы используется фреймворк Hydra, который здорово облегчает жизнь. В чём вообще проблема? В задачах процессной аналитики требуется постоянно менять входные параметры и сохранять результаты работы. Но при большом количестве запусков возникает потребность в отдельной системе для управления как передаваемыми параметрами, так и логированием. В статье рассмотрим, как фреймворк Hydra может помочь нам с этим. Кому интересно ― просим под кат!

     03.07.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Эволюция игрового фреймворка. Введение 1. Постановка проблемы

Скорость разработки и качество кода — вот, пожалуй, одно из главнейших противоречий IT-индустрии. Можно долго продумывать архитектуру приложения, потом ее совершенствовать, улучшать, а в итоге так ничего и не сделать. А можно быстро что-то сварганить, а потом и зарелизить, но из-за ошибок проектирования завести весь проект в тупик. На каждые два часа разработки, шесть часов будет уходить на поиск и исправление багов, в результате чего вся последующая разработка фактически застопорится.Таким образом, вопрос: качество или скорость переходит в проблему: хороший, но вечно незаконченный проект или хоть как-то, но работающая программа. Любой менеджер как реалист, естественно, выберет второе.Так и получается, что куда ни ткнись, у всех код если не дрянной, то по меньшей мере неважный. То, что называется многозначительным словом legacy. Все всё понимают, плюются, но поделать ничего не могут. Код уже есть и с ним нужно работать. Все предложения по улучшению не приветствуются, а то и прямо запрещаются. Как тут быть, что поделать? Попробуем разобраться.

     02.07.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Учимся анализировать — полный цикл

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

     02.07.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Бот волонтёра или как помочь инициативным группам по помощи нуждающимся

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

     30.06.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Делаем тетрис в QR-коде, который работает

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

     30.06.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Итераторы в Python для самых маленьких

«Напиши, пожалуйста, кастомный итератор,» — такое задание довольно часто дают на собеседованиях, и я раз за разом вижу обреченные глаза кандидата, когда он сталкивается с подобной просьбой. Опыт участия в собеседованиях показал мне, что большинство начинающих разработчиков бегут от этой темы, потому что она кажется слишком запутанной и непонятной. А ведь ничего сложного в ней нет, если подобраться к ней правильным образом — в чём я и постараюсь помочь дорогим читателям.Наше путешествие мы начнем с того, что вообще такое итератор. Итератор — это некий объект, который в себе реализует интерфейс перебора чего-либо. А говоря рабоче-крестьянским языком — это такая штука, которая в себе описывает правило, по которому мы будем перебирать содержимое той или иной коробки.

     30.06.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Лямбда-функция в Python простыми словами

В этой статье вы подробнее изучите анонимные функции, так же называемые "лямбда-функции". Давайте разберемся, что это такое, каков их синтаксис и как их использовать ( с примерами).Лямбда-функции в Python являются анонимными. Это означает, что функция безымянна. Как известно, ключевое слов def используется в Python для определения обычной функции. В свою очередь, ключевое слово  lambda  используется для определения анонимной функции.

     30.06.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

JIT-компилятор Python в 300 строк

Может ли студент второго курса написать JIT-компилятор Питона, конкурирующий по производительности с промышленным решением? С учётом того, что он это сделает за две недели за зачёт по программированию.

Как оказалось, может, но с нюансами.

     29.06.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Как я писал асинхронные веб-запросы на Python, или почему провайдер считает, что я бандит

(Обратите внимание на комментарии к статье)
На днях по работе потребовалось сделать утилиту, которая прямо вот из консоли ходит в апи нашего клауд сервиса и берет оттуда кое-какую информацию.Подробности что и зачем - вне этого рассказа. Принципиальный вопрос здесь другой - скорость. Скорость реально важна (порядок количества запросов - десятки и сотни). Потому что ждать - не кайф.Здесь я хочу поделиться своим ресёрчем на тему запросов, как делать круто, а как нет. С примерами кода конечно. А так же рассказать, как я тупил.

     29.06.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Как нарисовать очень грустную девочку, если вы программист

Вообще как художник я бездарность. Объясняется это принципом RPG: вы либо качаете воина, либо мага, либо бесполезное существо (полувоин-полумаг, который бесполезен и как маг, и как воин). И я вкачал всё в программирование, поэтому с рисованием у меня примерно на уровне четвёртого класса.Но иногда встречаются вещи, которые влетают мне прямо в душу (которой у меня нет) и переворачивают всё вверх дном. Увы, я ничего не умею, и в такие моменты я остро жалею, что не могу взять и накидать что-то на бумаге, может и не идеальное вовсе, но чтобы хоть как-то сохранить и передать эту эмоцию сквозь время. А может, всё не так однозначно?

     28.06.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Книга «Python. Чистый код для продолжающих»

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

     28.06.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Обзор книги «Python для чайников», худшая книга для начинающих с нуля

Публикую обзор книги "Python для чайников" от автора Джон Пола Мюллера.Ссылку на бесплатную электронную версию этой книги оставлю в конце поста. Стоит читать? Нет! Почему? Опишу в статье.

     28.06.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Найти всё. Text Mining

Хочу поделиться опытом анализа текста. Возьму рабочий пример документов в отношении граждан, проходящих процедуру банкротства. Задача заключается в автоматизированном сборе информации из текста 300 тыс. документов такой как: номер счета, с которого можно снять средства, разрешенная сумма, период действия.

     27.06.2022       Выпуск 445 (27.06.2022 - 03.07.2022)       Статьи

Интеграция оплаты Юкасса в telegramm для самозанятых

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

     24.06.2022       Выпуск 444 (20.06.2022 - 26.06.2022)       Статьи

Собираем генератор данных на Blender. Часть 3: Материалы и освещение

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

Материалы в Blender позволяют влиять на внешний вид объектов. Например, мы можем поменять цвет, прозрачность, шероховатость и т.д. В этой статье мы рассмотрим, как работать с этими свойствами через API.

 

     24.06.2022       Выпуск 444 (20.06.2022 - 26.06.2022)       Статьи

Воспроизводимость ML экспериментов с помощью MLflow project

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

     24.06.2022       Выпуск 444 (20.06.2022 - 26.06.2022)       Статьи

Создание модели предсказания кода МКБ-10 на основе текста описания болезни

Решила с вами поделиться одной простой работой, которая привела к неплохим результатам. Расскажу о всем подробно и очень просто:) Интересно тем, кто еще не решал задачи NLP до этого момента.