TGViewer
Python Academy Python Academy @python_academy · 44.1K subscribers
Post #717 22.7K
Проверка истинности объекта класса

Для того, чтобы определить поведение при проверке на истинность объектов классов в python3 есть "магический" метод __bool__(), который был добавлен на замену устаревшему __nonzero__() в python2.

Если данный метод определен в классе, то он будет вызываться при каждой проверке объекта на истинность а также с помощью функции bool(). Метод должен возвращать False или True.

Если __bool__() не определен, будет вызываться метод __len__(), если он определен, и, соответственно, объект будет считаться истинным, если результат __len__() не будет равен нулю. Если в классе не определены ни __len__(), ни __bool__(), все его экземпляры будут истинными.

#magic #__bool__
  • 👍 2
More from @python_academy
  1. Oct 7, 2026Знакомство с библиотекой NumPy в Python Что такое NumPy? NumPy (Numerical Python) - это по…
  2. Oct 6, 2026Генерируем QR-код Простой, но удобный и полезный пакет для создания QR-кодов. Для отрисовк…
  3. Oct 5, 2026Корутины (Coroutines) В PEP 342 были представлены корутины, которые стали некой противопол…
  4. Oct 4, 2026Порядок разрешения методов В Python существует так называемый Method Resolution Order (MRO…
  5. Oct 3, 2026Полезные функции модуля itertools Модуль itertools - инструмент в Python для работы с итер…
  6. Oct 2, 2026Scrapy: Мощный инструмент для веб-скрапинга на Python Scrapy - это высокоэффективная библи…
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 →