TG Telegram Group & Channel
Библиотека Python разработчика | Книги по питону | United States America (US)
Create: Update:

В Python каждое значение имеет логическое (булево) представление. Оно неявно приводится к bool, когда используется в if, bool, not и других логических операциях.

Ложными (False) считаются следующие объекты: None, False, 0 любого типа, а также пустые коллекции ("", [], {} и т. д.), включая пользовательские коллекции с методом __len__, если __len__ возвращает 0.

Можно также определить пользовательскую проверку логического значения для своих объектов, используя магический метод __bool__:


class Rectangle:
def __init__(self, width, height):
self._w = width
self._h = height

def __bool__(self):
return bool(self._w and self._h)

print(bool(Rectangle(2, 3))) # True
print(bool(Rectangle(2, 0))) # False
print(bool(Rectangle(0, 2))) # False


Обратите внимание, что в Python 2 аналогом __bool__ является метод __nonzero__.

👉@BookPython

В Python каждое значение имеет логическое (булево) представление. Оно неявно приводится к bool, когда используется в if, bool, not и других логических операциях.

Ложными (False) считаются следующие объекты: None, False, 0 любого типа, а также пустые коллекции ("", [], {} и т. д.), включая пользовательские коллекции с методом __len__, если __len__ возвращает 0.

Можно также определить пользовательскую проверку логического значения для своих объектов, используя магический метод __bool__:


class Rectangle:
def __init__(self, width, height):
self._w = width
self._h = height

def __bool__(self):
return bool(self._w and self._h)

print(bool(Rectangle(2, 3))) # True
print(bool(Rectangle(2, 0))) # False
print(bool(Rectangle(0, 2))) # False


Обратите внимание, что в Python 2 аналогом __bool__ является метод __nonzero__.

👉@BookPython


>>Click here to continue<<

Библиотека Python разработчика | Книги по питону




Share with your best friend
VIEW MORE

United States America Popular Telegram Group (US)