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

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


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

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

(27.11.2023 - 03.12.2023)

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

Статьи

  О динамическом программировании на пальцах

Как динамическое программирование может упростить нашу жизнь? Как можно оптимизировать решение задач?Сегодня мы разберем динамическое программирование на пальцах с примерами на Python!

  Сводка от pythonz net 26.11.2023 — 03.12.2023

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

  Сервис проверки пользовательских файлов «powered by pytest»: нужно повозиться, но оно того стоит

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

 

  Передаем данные с одноплатника Repka Pi (или Raspberry Pi) в интернет по GSM связи через модуль SIM868 и GPRS протокол

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

  16-, 8- и 4-битные форматы чисел с плавающей запятой

Я, честно говоря, был удивлён, когда узнал о существовании 4-битного формата для представления чисел с плавающей запятой. Да как такое вообще возможно? Лучший способ узнать об этом — самостоятельно поработать с такими числами. Сейчас мы исследуем самые популярные форматы чисел с плавающей запятой, создадим с использованием некоторых из них простую нейронную сеть и понаблюдаем за тем, как она работает.

  Make It Right! Максимум пользы, минимум проблем: рекомендации по написанию API автотестов на Python

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

 

  Создаём собственную систему поиска фильмов на основе проекта Андрея Карпати

В апреле 2023 года Андрей Карпати, один из основателей OpenAI и бывший директор по ИИ в Tesla, поделился своим занятным проектом выходного дня – системой поиска и рекомендации кино.

  Я календарь переверну: использование Workalendar для определения календарных дней

Работа с календарными данными является неотъемлемой частью многих приложений и проектов, связанных с планированием событий, управлением ресурсами и анализом данных. Базовой библиотекой для работы с датами и временем является datetime, но иногда её функционала оказывается недостаточно для решения каких‑то задач, и приходится обращаться к сторонним библиотекам.

  Decky Notifications: как переизобрести KDE Connect и перенести уведомления в Steam Deck

Недавно в мои руки попала портативная игровая консоль Steam Deck. Замечательное устройство, которое полностью поглощает внимание. В этом я вскоре нашел минус: телефон генерирует уведомления и приходится откладывать приставку, чтобы посмотреть сообщение.

  Пишем консольное приложение для работы с базой данных на Python

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

  Профилирование асинхронного Python

Профилирование приложений — это процесс анализа программы для определения её характеристик: времени выполнения различных частей кода и использования ресурсов.Для асинхронного python-кода существует конечное количество специфических "узких мест", которые лучше перечислить заранее.

  Вероятно, вы неправильно используете метод __init__ в Python

Автор статьи обращает внимание на проблему, которая заключается в использовании метода __init__ для сложной логики создания объектов, что приводит к разрастанию и усложнению кода. Статья предлагает использовать вспомогательные методы, чтобы разделить логику создания объектов на более мелкие и понятные части. Это упростит код и облегчит понимание того, как объекты создаются и инициализируются.

  Сказ о том, как я интерпретатор Brainfuck'а писал

Рассказываю о том, как писал интерпретатор языка Brainfuck на Python (с показом исходного кода и его объяснения).

Видео

  Технические собеседования — по обе стороны баррикад

Расскажу о своем опыте технических собеседований с обеих сторон — и как претендент, и как интервьюер. Поделюсь своим видением на что смотреть при найме с одной стороны и на то, как проходить техничку самому с другой. Также обсудим боли и радости собеседований.

  Альтернативные питоны: что нового, и стоит ли оно того?

Всегда существовало множество альтернативных реализаций Python, и хотя cpython развивается, развиваются и альтернативы. В этом докладе мы пройдемся по самым популярным и современным из них, посмотрим, что они предлагают, какие проблемы решают и, наконец, для каждого из них найдем ответ на вопрос: "Стоит ли мне перейти с cpython на X прямо сейчас?"

  Базовый кодовый стиль хорошего Python-бэкенда

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

Релизы

  IPython - 8.18.1

Интерактивная оболочка для языка программирования Python. Скачать можно по ссылке: https://pypi.python.org/pypi/IPython

  pymongo - 4.6.1

Python интерфейс для MongoDB. Скачать можно по ссылке: https://pypi.python.org/pypi/pymongo/

  tornado - 6.4

Масштабируемый, не блокирующий web-сервер. Скачать можно по ссылке: https://pypi.python.org/pypi/tornado/

  aiohttp - 3.9.1

http клиент/сервер для asyncio. Скачать можно по ссылке: https://pypi.python.org/pypi/aiohttp

  virtualenv - 20.25.0

Инструмент создания виртуального рабочего окружения. Скачать можно по ссылке: https://pypi.python.org/pypi/virtualenv