← Все вопросы
Зачем нужен bool() и что в Python считается False?
12
Видел bool(x) и if x:. Что именно превращается в False? Только 0 и None или есть ещё?
3 ответа
25
✓ Принятый ответ — помог автору
Ложными (falsy) в Python считаются:
False,None- любой нуль:
0,0.0,0j - пустые коллекции:
'',[],(),{},set(),range(0)
Всё остальное — истинно. bool(x) как раз показывает, как объект поведёт себя в if:
print(bool(0)) # False
print(bool('')) # False
print(bool('0')) # True! строка непустая
print(bool([0])) # True список непустой
Обрати внимание на '0' и [0] — это НЕ пустые, поэтому True.
Никита Лазарёнок Вот '0' это классическая ловушка — строка из символа ноль непустая · 7 месяцев назад
9
False: 0, None, '', [], {}, (), set(). Остальное True.
3
bool() явно приводит к True/False, но в if приведение и так происходит само.
Ваш ответ
Войдите, чтобы ответить на вопрос.