PyLinux - Всё о Linux, Python и IT
10.4K subscribers
1.4K photos
39 videos
2 files
1.28K links
У нас ты найдешь 👇

- библиотеки и скрипты python
- инструменты linux
- полезный софт
- важнейшие новости из мира IT

Связь с админом: @ghostifix

Купить рекламу: https://telega.in/c/pylinux0

РКН: 5999153523
Download Telegram
⚙️ Библиотека Python: icecream

icecream — это минималистичная библиотека для отладки, которая выводит переменные и выражения вместе с их именами.

Полезна при быстрой проверке значений без написания дополнительных print() и форматирования.

⚙️ Пример использования

from icecream import ic

def divide(a, b):
ic(a, b)
return a / b

result = divide(10, 2)
ic(result)

ic| a: 10, b: 2
ic| result: 5.0


Преимущества:


🟢 Отображает не только значение, но и имя переменной
🟢 Можно включать/отключать вывод без удаления кода
🟢 Работает с любыми типами данных и выражений

✔️ Установка

pip install icecream


➡️ Ссылка на документацию

😎 PyLinux | #python_libs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤‍🔥4
⚙️ Библиотека Python: sorcery

sorcery — это удобная отладочная библиотека, которая позволяет печатать переменные с их именами с помощью магического print(expr) — без необходимости вручную писать имена.

Полезна, когда нужно быстро выводить значения переменных для отладки, но лень писать f"{var=}" или использовать ic().

⚙️ Пример использования

from sorcery import spell

@spell
def test():
name = "Alice"
age = 30
print(name, age) # Автоматически напечатает: name='Alice', age=30

test()

name='Alice', age=30


Преимущества:


🟢 Не требует вручную писать имена переменных
🟢 Работает как print() — просто и быстро
🟢 Можно использовать как декоратор или контекстный менеджер

✔️ Установка

pip install sorcery


➡️ Ссылка на документацию

😎 PyLinux | #python_libs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
⚙️ Библиотека Python: cloup

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

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

⚙️ Пример использования

import cloup
from cloup import option_group

@cloup.command()
@option_group(
"Авторизация",
cloup.option("--user", help="Имя пользователя"),
cloup.option("--token", help="API токен")
)
@option_group(
"Настройки вывода",
cloup.option("--verbose", is_flag=True),
cloup.option("--json", is_flag=True)
)
def cli(user, token, verbose, json):
print(f"👤 User: {user}, Token: {token}")
print(f"🔧 Verbose: {verbose}, JSON: {json}")

if __name__ == "__main__":
cli()


Преимущества:


🟢 Группировка опций по смыслу прямо в --help
🟢 Валидация зависимых и исключающих опций
🟢 Поддержка ограничений и логических условий

✔️ Установка

pip install cloup


➡️ Ссылка на документацию

😎 PyLinux | #python_libs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤‍🔥2
⚙️ Библиотека Python: PyFunctional

PyFunctional — это мощная библиотека для декларативной обработки коллекций в стиле функционального программирования. Позволяет применять map, filter, reduce и другие операции к потокам данных с лаконичным синтаксисом.

Идеально подходит, если ты хочешь работать с данными в цепочках и писать код, близкий к Scala или LINQ.

⚙️ Пример использования

from functional import seq

# Работа с коллекцией: фильтрация, преобразование, агрегация
data = seq([1, 2, 3, 4, 5]) \
.filter(lambda x: x % 2 == 0) \
.map(lambda x: x * 10) \
.reduce(lambda x, y: x + y)

print(data) # 60

# Обработка строк и списков словарей
names = seq(["Alice", "Bob", "Charlie"]).map(str.upper).to_list()
print(names) # ['ALICE', 'BOB', 'CHARLIE']

users = [
{"name": "Alice", "age": 30},
{"name": "Bob", "age": 20},
{"name": "Charlie", "age": 25}
]

youngest = seq(users).min_by(lambda u: u["age"])
print(youngest) # {'name': 'Bob', 'age': 20}


Преимущества:


🟢 Цепочки обработки данных без промежуточных переменных
🟢 Поддержка генераторов, списков, JSON и CSV
🟢 Функции как в Scala: filter, map, group_by, sum, reduce, flatten

✔️ Установка

pip install PyFunctional


➡️ Ссылка на документацию

😎 PyLinux | #python_libs
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥4
👩‍💻 Библиотека Python: yaspin

yaspin — это легковесная и мощная библиотека для отображения текстовых спиннеров в терминале во время длительных операций.

Отлично подходит для CLI-приложений — улучшает UX, показывает, что скрипт активно работает, и при этом не усложняет код.

⚙️ Пример использования
import time
from yaspin import yaspin

# Начало спиннера с текстом и цветом
with yaspin(text="Загрузка...", color="cyan") as spinner:
time.sleep(2) # длительная операция
spinner.ok(" ") # смена иконки при успешном завершении


Или как декоратор:
from yaspin import yaspin

@yaspin(text="Обработка данных...")
def process():
time.sleep(3)
return "done"

process()


Преимущества:


🟢 Более 70 анимаций (включая “shark”, “earth”) для визуального оформления
🟢 Полный контроль над стилем, цветом и положением спиннера
🟢 Яркий индикатор активности без зависимости от GUI
🟢 Безопасен при перенаправлении stdout/stderr — шрифты не слетают

✔️ Установка

pip install yaspin


➡️ Ссылка на документацию

😎 PyLinux | #python_libs
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍12