PYTHONOMANIA
273 subscribers
195 photos
3 videos
1 file
616 links
Откройте для себя мир Python в PYTHONOMANIA!

Идеально подходит как для начинающих, так и для опытных разработчиков. Присоединяйтесь к нам, чтобы достичь совершенства в Python!

Сайт: https://pythonomania.github.io/
Download Telegram
📱Yen.

Yen — это менеджер окружений Python, объединяющий различные инструменты для управления виртуальными средами.

🧩Что умеет делать yen?

🔜Мгновенно запустить любую версию Python с помощью одной команды:
$ yen exec --python 3.12


🔜Работает на Windows, MacOS и Linux (libc и musl), на Intel и ARM чипах.

🔜Мгновенно создать venv.
Благодаря microvenv, yen может создавать виртуальные окружения намного быстрее, чем встроенный модуль venv:
$ yen create venv -p 3.9


🔜Ноль зависимостей.
Нет необходимости устанавливать Python, искать apt, homebrew и т.д. Просто выполните одну команду в shell, чтобы установить yen локально.

🔜Управление скриптами Python.
Больше не нужно запускать pip install, чтобы установить такие инструменты, как ruff, awscli и т.д. в глобальной среде Python.

⚡Фактически, yen позволяет заменить различные инструменты управления окружениями Python, такие как pyenv, pipx и virtualenv, на один статический бинарный файл.

✅Запуск кода Python на любом устройстве никогда не был таким простым!

#Python #yen #devtools #coding #programming #virtualenv #pythontools #developers

📱Ссылка на репозиторий:
https://github.com/tusharsadhwani/yen
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥3
📱Pipreqs.

pipreqs — это модуль для генерации файла requirements.txt на основе импортов, используемых в проекте.

❓Почему не pip freeze?

🔘pip freeze сохраняет только те пакеты, которые были установлены через pip install в вашем окружении.

🔘pip freeze сохраняет все пакеты в окружении, включая те, которые вы не используете в текущем проекте (если вы не используете virtualenv).

🔘Иногда вам просто нужно создать файл requirements.txt для нового проекта без установки модулей.

#pipreqs #python #requirements #pythonproject #devtools #coding #virtualenv #pip #pythonlibraries #разработка #программирование

📱Ссылка на репозиторий:
https://github.com/bndr/pipreqs
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍5⚡3🔥2
📱Pex.

Pex — это библиотека для создания .pex файлов, которые представляют собой исполняемые Python окружения, аналогичные virtualenv, но более удобные.

💡 .pex файлы могут включать несколько платформенных Python-дистрибутивов, что делает их переносимыми между Linux и macOS.

✅Pex отлично подходит для быстрого создания, тестирования и развертывания Python-приложений!

#Python #Pex #DevOps #Automation #PythonDevelopment #VirtualEnv #Packaging

📱Ссылка на репозиторий:
https://github.com/pex-tool/pex
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍2🔥2
📱Pipdeptree.

pipdeptree — это утилита, которая показывает зависимости установленных Python-пакетов в виде наглядного дерева.

Когда вы делаете pip freeze, весь список идёт плоской строкой — и невозможно понять, какой пакет от чего зависит и почему вообще оказался в окружении. Поэтому искать «кто тянет старую версию X» или разбираться с конфликтами — мучение.

🔹pipdeptree решает эту проблему:

🔘Показывает зависимости в виде дерева.

🔘Помогает найти конфликтующие версии.

🔘Умеет работать внутри virtualenv (в том числе автоматически — --python auto).

🔘Может вывести JSON, mermaid-диаграмму или граф GraphViz.

🔘Умеет искать «кто зависит от этого пакета» через --reverse.

🔘Подходит для генерации чистого requirements.txt или даже «lock файла».

🔘Полезно в CI — можно включить строгий режим --warn fail.

🔻Пример:

pipdeptree сразу покажет, что Flask → Jinja2 → MarkupSafe и где возникает конфликт.

✅Если вы хотите видеть всю структуру зависимостей проекта и ловить проблемы до того, как они взорвут прод — pipdeptree действительно выручает.

#Python #pipdeptree #Dependencies #Virtualenv #Pip #DevTools #PythonTips #CI #PackageManagement

📱Ссылка на репозиторий:
https://github.com/tox-dev/pipdeptree
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
📱Pywho.

Pywho — удобный CLI‑инспектор для Python‑окружения: одной командой показывает, какой интерпретатор и venv запущены, куда смотрит sys.path, куда реально резолвятся импорты.

🔹Основные возможности:

🔘Инспекция окружения

pywho выводит интерпретатор (путь, версия, архитектура), активный venv (тип: venv/virtualenv/uv/conda/poetry/pipenv и т.п.), пути site-packages, менеджер пакетов (pip/uv/conda/poetry/pipenv/pyenv) и полный sys.path.

Есть режим pywho --json и pywho --packages (список установленных пакетов с версиями и путями) для CI/issue‑репортов.

🔘Трассировка импортов

pywho trace <module> показывает, из какого файла реально грузится модуль, его тип (stdlib/third-party/local), кэширован ли он и какой порядок поиска по sys.path был использован.

- Поиск шадоу‑модулей по проекту
pywho scan . проходит дерево проекта и находит файлы, которые шадовят модули stdlib или установленные пакеты, с градацией по важности: HIGH (stdlib), MEDIUM (third-party).

Стандартные мусорные директории вроде .venv, __pycache__, node_modules, dist, build, .git автоматически игнорируются.

🔘Python API

Можно использовать как библиотеку:

- inspect_environment() — объект с инфой про интерпретатор, venv, менеджер пакетов, пути, плюс to_dict() для JSON.

- trace_import("name") — программный аналог pywho trace с полями resolved_path, module_type, is_cached, shadows.

- scan_path(Path(".")) — результаты сканирования на шадоу с уровнем серьёзности.

🔘Интеграция в рабочие процессы

- “Works on my machine” debug: попросить пользователя выполнить pywho --json --packages и приложить результат к issue или в чат.

- Онбординг: pywho для быстрой проверки, что окружение настроено как надо.

- CI: pywho --json --packages > env.json как снимок окружения сборки.

✅Если резюмировать, pywho — это удобный “однокнопочный” отчёт по окружению + инструменты для объяснения, какой именно Python вы запускаете, почему `import X` подхватил тот самый файл и где у вас лежит опасный `json.py` рядом с проектом.

#python #pywho #debugging #virtualenv #asyncio #packagemanagement #devtools #cli #stdlib #import #shadowing

📱Ссылка на репозиторий:
https://github.com/AhsanSheraz/pywho
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥32👍1