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

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

Сайт: https://pythonomania.github.io/
Download Telegram
📱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
📱Migrate-to-uv.

migrate-to-uv — это инструмент для миграции проекта с другого менеджера пакетов на uv.

🔹Использование:

🔘С uv:
uvx migrate-to-uv 


🔘С pipx:
pipx run migrate-to-uv  


🔻Поддерживаемые менеджеры пакетов:

🔘Poetry
🔘Pipenv
🔘pip-tools
🔘pip

🧢Особенности:

🔘Перенос метаданных проекта (название, версия, авторы и т. д.).
🔘Сохранение всех зависимостей и их групп.
🔘Конвертация маркеров зависимостей, источников и точек входа.
🔘Поддержка версий зависимостей с приведением их к стандарту PEP 440.

#MigrateToUV #Python #DependencyManagement #PackageManagers #Poetry #Pipenv #PipTools #Pip

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

compress_json – это удобная библиотека для чтения и записи сжатых JSON-файлов с автоматическим определением формата. Основана на идеях compress_pickle.

🔹Поддерживаемые форматы сжатия:

🔘gzip.

🔘bz2.

🔘lzma (или xz).

🔺Пример использования:
import compress_json

D = {"A": {"B": "C"}}

compress_json.dump(D, "data.json.gz") # Сжатие в gzip
D1 = compress_json.load("data.json.gz") # Загрузка обратно

assert D == D1


🔻Дополнительные возможности:

🔘local_load / local_dump – загрузка и сохранение в текущей директории.

🔘use_cache=True – загрузка файлов из RAM-кэша для повышения производительности.

🔘compression_kwargs / json_kwargs – передача параметров в JSON и алгоритм сжатия.

✅Сжимайте JSON-файлы легко и эффективно!

#Python #JSON #Compression #pip #DataScience

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

Strif — это мини-библиотека (~1000 строк кода) с набором ~30 удобных функций для работы со строками, файлами и объектами. Она не имеет зависимостей и отлично дополняет стандартную библиотеку Python.

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

🔘Атомарные файловые операции: надёжная запись без риска повреждения файлов.
→ atomic_output_file(), copyfile_atomic()

🔘Умная аббревиация и форматирование строк.
→ abbrev_str(), single_line(), quote_if_needed()

🔘Уникальные идентификаторы на базе 36 и ISO timestamp.
→ new_uid(), new_timestamped_uid()

🔘Хеширование строк и файлов в разных форматах: hex, base36, base64.
→ hash_string(), file_mtime_hash()

🔘Потокобезопасная переменная с встроенным RLock.
→ AtomicVar

🔘Гибкая работа со строками и шаблонами.
→ replace_multiple(), insert_multiple(), StringTemplate

✅Strif делает рутину проще и надёжнее, особенно при работе с файлами, логами, ID и шаблонами.

#Python #Strif #БиблиотекиPython #Утилиты #Разработка #Файлы #Строки #UID #Hash #DevTools #PythonTips #pip #poetry #uv #OpenSource #AtomicFiles #Python13 #threadsafe

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

Python-Blosc2 — это высокопроизводительная библиотека для работы с массивами NumPy-подобного формата в сжатом виде. Она позволяет выполнять вычисления не распаковывая данные, что экономит память и время.

🔹Возможности:

🔘Основана на супербыстром компрессоре C-Blosc2.

🔘Поддержка памяти, mmap и стриминга.

🔘Гибкий движок вычислений.

🔘Простые форматы хранения.

🔘Работа с большими объёмами без загрузки в RAM.


🔻Идеально подходит для:

🔘Data Science.

🔘Обработки больших массивов.

🔘Создания кэшированных хранилищ.

🔘Высоконагруженных приложений.

#Python #Blosc2 #DataScience #ndarray #СжатиеДанных #ХранениеДанных #NumPy #Jupyter #Caterva #PyData #Conda #pip

📱Ссылка на репозиторий:
https://github.com/Blosc/python-blosc2
Please open Telegram to view this post
VIEW IN TELEGRAM
15👍2
📱Toolz.

Toolz — это библиотека функциональных утилит для Python.

✅Позволяет удобно и эффективно работать с итераторами, функциями и словарями в функциональном стиле.

🔹Toolz состоит из трёх модулей:

🔘itertoolz — утилиты для итераторов (groupby, unique, interpose).

🔘functoolz — функции высшего порядка (compose, curry, memoize).

🔘dicttoolz — работа со словарями (assoc, merge, update-in).

🔻 Пример — функциональный подсчёт слов в строке:
from toolz import compose, frequencies
from toolz.curried import map

def stem(word):
return word.lower().strip(",.!:;'-\"")

wordcount = compose(frequencies, map(stem), str.split)
wordcount("This cat jumped over this other cat!")
# {'this': 2, 'cat': 2, 'jumped': 1, 'over': 1, 'other': 1}


#Python #Toolz #FunctionalProgramming #PyToolz #PythonDev #PythonTools #DataProcessing #CyToolz #pip #OpenSource #PythonБиблиотеки

📱Ссылка на репозиторий:
https://github.com/pytoolz/toolz
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍3332
📱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