Добро пожаловать в мир Python
3.12K subscribers
544 photos
19 videos
14 files
1.22K links
Подборка полезных материалов для Python программистов.

По вопросам сотрудничества- @Daily_admin_info

По иным темам @un_ixtime
Download Telegram
Мониторинг на Python: как сохранить метрики в мультипроцессном режиме.

Привет, Хабр! Меня зовут Никита, я backend-разработчик команды клиентских сервисов. В Selectel мы строим и поддерживаем IT-инфраструктуру для компаний, которые развивают свои цифровые продукты. В нашем департаменте около 20 приложений, большая часть из которых работает на Flask и Gunicorn. Чтобы отслеживать их производительность, мы мониторим параметры системы с помощью Prometheus.

С развитием бизнеса нагрузка на приложения возрастает, один из способов масштабировать его под большее количество запросов — запустить Gunicorn-сервер с несколькими worker-процессами в мультипроцессном режиме. Однако при таком подходе клиент Prometheus не выводит нужные нам метрики CPU и RAM. В статье расскажу, как мы решили эту проблему, сохранив метрики и организовав мониторинг в мультипроцессном режиме.

Читать дальше →https://habr.com/ru/companies/selectel/articles/781614
Проектирование и руководство: объектно-ориентированное программирование на Python
В этом видеокурсе вы узнаете о принципах SOLID — пяти общепризнанных стандартах для улучшения объектно-ориентированного проектирования на Python. Применяя эти принципы, вы можете создавать объектно-ориентированный код, который будет более удобным в сопровождении, расширяемом, масштабируемом и тестируемом. КУРС REAL PYTHON

Предварительный просмотр Python 3.12: более интуитивно понятные и последовательные F-строки В этом уроке вы познакомитесь с одной из будущих функций Python 3.12, которая представляет новую формализацию и реализацию синтаксиса f-строки. Новая реализация снимает некоторые ограничения и ограничения, влияющие на литералы f-строки в версиях Python ниже 3.12. REAL PYTHON

Изучение показателей кода в Python с помощью Radon Radon — это инструмент измерения показателей кода. Эта статья познакомит вас с этим и научит, как можно улучшить свой код на основе его измерений. МАЙК ДРИСКОЛ.
Это курс Гарвардского университета: «Введение в науку о данных с помощью Python». Вы можете пройти этот урок бесплатно. Если вам нужен сертификат, вы можете заплатить за него 299 долларов. Чтобы пройти этот курс, вы должны быть знакомы с Python. Курс предназначен для новичков.

https://pll.harvard.edu/course/introduction-data-science-python
Для Python предложен JIT-компилятор, использующий технику copy-and-patch

Брандт Букер (Brandt Bucher) из компании Microsoft, входящий в число core-разработчиков CPython и работающий в команде, занимающейся увеличением производительности интерпретатора CPython, опубликовал реализацию JIT-компилятора для Python, использующую технику Copy-and-Patch. Публикация JIT приурочена к Рождеству и анонс написан в стихах.

Предложенный JIT примечателен очень высокой скоростью генерации кода, простотой сопровождения и полной интеграцией с интерпретатором. Предложенный метод позволяет автоматически преобразовать интерпретатор, написанный на языке Си, в JIT-компилятор, без отдельного формирования логики генерации кода и без ручного создания ассемблерных представлений. При таком подходе исправление ошибки в интерпретаторе автоматически приведёт и к устранению той же проблемы в JIT, так как используется общий генератор кода.
🏆Как освоить 📊 конвейеры больших данных с помощью Taipy и PySpark 🐍

В этой статье будет использован простой пример, чтобы продемонстрировать, как мы можем интегрировать PySpark с Taipy , чтобы соединить ваши потребности в обработке больших данных с интеллектуальным выполнением заданий . https://dev.to/taipy/how-to-master-big-data-pipelines-with-taipy-and-pyspark-14oe
4 миллиарда операторов if — проверка того, является ли каждое 32-битное число четным или нечетным.

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

В современном мире, где ИИ постепенно заменяет программистов, отнимая у них работу и совершая переворот в том, как мы подходим к рассуждениям о коде, нам, возможно, следует быть более открытыми к мыслям людей, недавно пришедших в нашу отрасль? На самом деле, показанный выше код — идеальный пример компромисса между временем и задействованной памятью. Мы жертвуем временем и в то же время памятью и временем компьютера! Поистине чудесный алгоритм!

https://andreasjhkarlsson.github.io/jekyll/update/2023/12/27/4-billion-if-statements.html
[Перевод] Сколько ядер CPU можно использовать параллельно в Python?.

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

Как же проверить, сколько ядер есть у компьютера? И действительно ли это хороший совет?

Оказывается, на удивление сложно определить, сколько потоков выполнять:

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

- Хуже того, из-за таких функций CPU, как параллельность на уровне команд и одновременной многопоточности (Hyper-threading в CPU Intel), количество ядер, которое можно эффективно использовать, зависит от того кода, который напишете вы!

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

Читать далее https://habr.com/ru/articles/784014
Вот библиотеки Python, которые фокусируются на различных аспектах полнофункциональной разработки; некоторые сосредоточены на разработке веб-приложений, некоторые — на серверной части, а третьи — на том и другом. https://dev.to/taipy/full-stack-toolbox-python-edition-20h2
Data Scientist 50-го уровня: библиотеки Python, которые нужно знать
Эта статья поможет вам понять различные инструменты науки о данных, используемые экспертами для визуализации данных, построения моделей и манипулирования данными.

https://www.kdnuggets.com/level-50-data-scientist-python-libraries-to-know
Самый быстрый способ чтения Excel на Python

Чтение 500 тыс. строк менее чем за 4 секунды
https://hakibenita.com/fast-excel-python


🐍 «‎Python для инженеров» — старт курса 15 января!

Что смогли автоматизировать с Python наши студенты:

🔥 Автоматизация изменения конфигурации сервера, экономящая 23 часа в месяц и повышающая лояльность клиентов за быстроту обработки запросов — Данил Бахаев, DevOps-инженер в X5 Group.

🔥 Инструмент для анализа и отключения холостых ресурсов, позволяющий сократить расходы на 40-50% или около 12 миллионов рублей в год — Артем Чекунов, Senior DevOps Engineer в Chartboost.

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

Изучить программу и зарегистрироваться

🎁 А для тех, кто хочет всегда быть в курсе событий и постоянно учиться новому, мы создали бесплатный чат-бот. Вас ждут live-coding стримы, статьи и кейсы по Python — будет интересно!
[Перевод] NumPy: оттачивайте навыки Data Science на практике.

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

Читать далееhttps://habr.com/ru/articles/784978
Pandas vs. Polars: сравнительный анализ библиотек фреймов данных Python
Углубленный анализ их синтаксиса, скорости и удобства использования. Какой из них лучше всего использовать при работе с данными?

https://www.kdnuggets.com/pandas-vs-polars-a-comparative-analysis-of-python-dataframe-libraries

Освоение виртуальных сред Python: полное руководство по venv, Docker и защите вашего кода

https://snyk.io/blog/mastering-python-virtual-environments
Вот 45 упражнений Python с циклами (for, while), операторами f-else и функцией range() , а также их решения. Каждое упражнение сопровождается кратким описанием проблемы и решением, использующим упомянутые конструкции.

https://www.techbeamers.com/python-exercises-on-loops-conditions-range