Странное поведение функции any

hits = [
    [False, False, False],
    [False, False, False],
    [False, False, False],
]

print(any(hits))

Почему возвращает результат True?


Ответы (1 шт):

Автор решения: nyekitka

Потому что any не просматривает значения во вложенных списках. Python любой непустой список интерпретирует как True, поэтому и результатом является True. Если вы хотите просмотреть все значения, то это можно сделать так:

print(any(map(any, hits)))
→ Ссылка