Публикации о языке Python

Рецепты uWSGI: преобразование документов с использованием LibreOffice

Для приготовления преобразования документов нам понадобится LibreOffice, uwsgi-python, pylokit и webob. Можно также воспользоваться готовым образом. Но это только для запуска uWSGI-сервера, а для подключения к uWSGI-серверу будем использовать nginx.
Читать дальше →




Как работают профайлеры в Ruby и Python?

Перевод статьи подготовлен в преддверии старта продвинутого курса «Разработчик Python».





Всем привет! В качестве аперитива к профайлеру на Ruby я хотела рассказать о том, как работают уже существующие профайлеры на Ruby и Python. Также это поможет дать ответ на вопрос, который мне задает множество людей: «Как написать профайлер?»

В этой статье мы сфокусируемся на профайлерах процессора (а не, допустим, профайлерах памяти/кучи). Я расскажу о некоторых базовых подходах к написанию профайлера, приведу примеры кода и покажу много примеров популярных профайлеров на Ruby и Python, а также расскажу, как они работают под капотом. Читать дальше →



[Из песочницы] Простой P2P сервер на python


Одноранговая сеть или проще P2P сеть — это сеть в которой все пользователи равны и имеют равные права. Отличительная особенность таких сетей от обычных в том, что в ней нет единого сервера, к которому подключаются пользователи, вместо этого они подключаются друг к другу. Существуют гибридные варианты таких сетей, в котором присутствует сервер, выполняющий только координирующую работу.


Сегодня я хочу предложить простой вариант реализации P2P сервера для такой сети на языке python.

Читать дальше →



Вы просто не знаете зачем нужны языки с динамической типизацией

Вы просто не знаете зачем нужны языки с динамической типизацией



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


Я, конечно же, я верю в статическую типизацию. Я убежден что она захватит (и уже захватывает) мир. Люди, бросавшие мне в лицо: "нам не нужны все эти ваши типы" с таким же фанатизмом рукоплескали добавлению различных типов в их любимые языки с динамической типизацией (классы в JavaScript, аннотации типов вместе с mypy в python). Мне не нужны извинения за их недальновидность и невежество. Они вели себя радикально лет 10-15 назад и проиграли. То, во что превратилась экосистема их любимых языков — это лучшее наказание, а их поведение обязательно должно быть наказано. Пока




[Перевод] 8 продвинутых возможностей модуля logging в Python, которые вы не должны пропустить

Понимайте свою программу без ущерба для производительности



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


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

Читать дальше →



Как проанализировать рынок фотостудий с помощью Python (3/3). Аналитика

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

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

Группа молодых предпринимателей рассматривала вариант открытия своей фотостудии в Москве. Им необходимо было узнать:

  • какое общее состояние рынка фотостудий: растет, стабильный или падает?
  • какова сезонность рынка?
  • сколько они смогут заработать?
  • где лучше открывать залы?
  • какую сумму вкладывать в проект?
  • на сколько сильная конкуренция на рынке?

Ответить на эти и многие другие вопросы им помогли



Пишем веб сервис на Python с помощью FastAPI


Знаю, знаю, наверное вы сейчас думаете «что опять?!».
Да, на хабре уже неоднократно писали о фреймворке FastAPI. Но я предлагаю рассмотреть этот инструмент немного подробнее и написать API своего собственного мини Хабра без кармы и рейтингов, зато с блэкджеком и с тестами, аутентификацией, миграциями и асинхронной работой с БД. Читать дальше →



Python-digest #345. Новости, интересные проекты, статьи и интервью [27 июля 2020 — 2 августа 2020]

Добавляйте свои новости через специальную форму. Следите за всем этим безобразием в RSS, Twitter или Telegram @py_digest



Поддержите проект рублем или руками




Aiohttp + Dependency Injector — руководство по применению dependency injection

Привет,

Я создатель Dependency Injector. Это dependency injection фреймворк для Python.

Продолжаю серию руководств по применению Dependency Injector для построения приложений.

В этом руководстве хочу показать как применять Dependency Injector для разработки aiohttp приложений.

Руководство состоит из таких частей:
Читать дальше →




[Из песочницы] Тесты на pytest с генерацией отчетов в Allure с использованием Docker и Gitlab Pages и частично selenium

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



Когда я хотел добавить в gitlab автотесты в стеке python, allure, docker, то я выяснил, что толковых статей на эту тему нет. Пришлось разбираться самостоятельно и как результат проб и ошибок появилась эта статья, которая скорее является гайдом, частично затрагивающим написание тестов, но наибольший фокус именно на выстраивании инфраструктуры. Если у вас уже написаны тесты на allure, то вы сразу можете переходить к разделу настройки инфраструктуры. Отмечу, что текст НЕ затрагивает написание UI тестов, но я затрону инфраструктуру для них в отдельном блоке.