Можно ли использовать объект python в нужном булевом контексте? По умолчанию любой объект равен True
в булевом контексте.boolean context объекта python
>>> class Person():
... pass
...
>>> a=Person()
>>> bool(a)
True
Как bool(0)
возвращает False
и bool(1)
возвращает True
.Can у меня есть какой-либо способ определить объект, чтобы иметь это логическое значение, либо True
или False
. Исправьте меня, если я не прав, спасибо.
Другой вариант заключается в реализации '__len__' (как контейнер); return '0' переведёт в' False' в логическом контексте, любое целое число над 1 будет 'True'. –
@MartijnPieters Отредактировано для включения –
@MartijnPieters благодарит за то, что вы указали решение __len__ по вышеуказанному вопросу. – darxtrix