Подтвердить что ты не робот

Проверьте, являются ли все элементы списка python False

Как вернуть "false", потому что все элементы "false"?

Данный список:

data = [False, False, False]
4b9b3361

Ответ 1

Используя any:

>>> data = [False, False, False]
>>> not any(data)
True

any вернет True, если в iterable есть значение истины.

Ответ 2

В принципе существуют две функции, которые обрабатывают итерацию и возвращают True или False, в зависимости от того, какие элементы логических значений последовательности оцениваются.

  • all(iterable) возвращает значение True, если все элементы iterable считаются истинными значениями (например, reduce(operator.and_, iterable)).

  • any(iterable) возвращает значение True, если хотя бы один элемент iterable является истинным значением (опять же, используя функциональный материал, reduce(operator.or_, iterable)).

Используя функцию all, вы можете сопоставить operator.not_ над своим списком или просто создать новую последовательность с отрицательными значениями и проверить, что все элементы новой последовательности верны:

>>> all(not element for element in data)

С помощью функции any вы можете проверить, что хотя бы один элемент является истинным, а затем отрицает результат, так как вам нужно вернуть False, если есть истинный элемент:

>>> not any(data)

Согласно закону Де Моргана, эти два варианта вернут тот же результат, но я предпочел бы последний (который использует any), потому что он короче, читабельнее (и может быть интуитивно понято как "есть", t истинное значение в данных ") и более эффективно (поскольку вы не создаете никаких дополнительных последовательностей).

Ответ 3

Давай, ребята, он попросил вернуть "Истину", был ли какой-нибудь Истинный. Говоря то же самое, False, когда все являются ложными.

any(data)