TGViewer
Python академия Python академия @pythonofff · 7.13K subscribers
Post #2024 1.19K
Проверка истинности объекта класса

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

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

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

Подписывайтесь на канал 👉@pythonofff
  • 👍 2
  • ❤ 1
More from @pythonofff
  1. Oct 9, 2026Множества set Многие недооценивают данный тип, а зря. К примеру, если вам нужно найти коли…
  2. Oct 8, 2026Модуль sys Данный модуль предоставляет доступ к широким возможностям интерпретатора python…
  3. Oct 5, 2026Очистка элементов в последовательности Встроенный модуль itertools был создан для работы с…
  4. Oct 2, 2026Как вывести все методы класса в Python? Для того, чтобы вывести все методы класса, Вы може…
  5. Sep 30, 2026Функции высшего порядка Функции высшего порядка - функции принимающие или возвращающие дру…
  6. Sep 27, 2026Конструктор класса У классов практически во всех языках есть конструкторы — это такие спец…
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 →