TGViewer
Библиотека питониста | Python, Django, Flask Библиотека питониста | Python, Django, Flask @pyproglib · 37.2K subscribers
Post #7083 3.16K
😃 attrs: простота написания Python-классов без бойлерплейта

attrs — это Python-пакет, который снимает рутину при написании классов и автоматически реализует «ду́ндер»-методы (__init__, __repr__, __eq__ и др.).

📌 Используется даже NASA в миссиях на Марс с 2020 года!

Основная цель — писать лаконичный и корректный код без потерь производительности.

Пример:
from attrs import asdict, define, make_class, Factory

@define
class SomeClass:
a_number: int = 42
list_of_numbers: list[int] = Factory(list)

def hard_math(self, another_number):
return self.a_number + sum(self.list_of_numbers) * another_number

sc = SomeClass(1, [1, 2, 3])
print(sc) # SomeClass(a_number=1, list_of_numbers=[1, 2, 3])
print(sc.hard_math(3)) # 19
print(asdict(sc)) # {'a_number': 1, 'list_of_numbers': [1, 2, 3]}


attrs автоматически добавляет:
✔️ читаемый __repr__
✔️ методы сравнения
✔️ __init__ и управление аргументами
✔️ фабрики значений (Factory)
✔️ конструктор классов на лету (make_class)

📱 Репозиторий

🐸 Библиотека питониста

#буст
  • ❤ 12
  • 👍 4
  • 🔥 3
More from @pyproglib
  1. Oct 9, 2026Post #7855
  2. Oct 9, 2026Showboat и Rodney помогают показать работу ИИ-агента Саймон Уиллисон собирает демонстрации…
  3. Oct 7, 2026🎓 С Днём учителя! Учиться никогда не поздно — особенно когда технологии меняются быстрее,…
  4. Oct 3, 2026📚Напоминаем про наш полный курс «Самоучитель по Python для начинающих» Мы написали и собр…
  5. Oct 2, 2026🎹 Что делать после ChatGPT? Следующий шаг — AI-агенты. Они не просто отвечают на запросы,…
  6. Sep 30, 2026🔥 Последний день для разработчиков AI уже пишет код. Теперь важнее научиться встраивать е…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →