Функция all в Python похожа на функцию any(), разница между заключается в том, что функция all() возвращает True, в том случае, если все элементы в последовательности, являются истинными. Рассмотрим два примера для ясности:
boolean_list = ['True', 'True', 'True']
result = all(boolean_list)
print(result)
# Результат: True
boolean_list = ['True', 'False', 'True']
result = all(boolean_list)
print(result)
# Результат: False
Как видите, если хотя бы один из элементов не является истинным, то возвращаемый результат всегда будет False. Функция all(),может принимать в качестве параметра, любую последовательность(списки, кортежи,словари, и.т.д).
Возвращаемые значения функции all()
- True — в случае, если все элементы являются истинными
- False — в случае, если хотя бы один из элементов не является истинным
Когда | Возвращаемое Значение |
---|---|
Все значения истинны | Правда |
Все значения являются ложными | Ложный |
Одно значение является истинным (другие значения являются ложными) | Ложный |
Одно значение является ложным (другие являются истинными) | Ложный |
Пустая Итерируемая | Правда |
Пример 1. Как all() работает со списками?
# Все значения True
l = [1, 3, 4, 5]
print(all(l))
# Все значения False
l = [0, False]
print(all(l))
# Одно значение False
l = [1, 3, 4, 0]
print(all(l))
# Одно значение True
l = [0, False, 5]
print(all(l))
# Пустая последовательность
l = []
print(all(l))
#Результат:
True
False
False
False
True
Аналогичным образом функция all() работает и с кортежами и со множествами.
Пример 2. Как all() работает со строками?
s = "This is good"
print(all(s))
# 0 Это False
# '0' Это True
s = '000'
print(all(s))
s = ''
print(all(s))
# Результат:
True
True
True
Пример 3. Как all() работает со словарями?
s = {0: 'False', 1: 'False'}
print(all(s))
s = {1: 'True', 2: 'True'}
print(all(s))
s = {1: 'True', False: 0}
print(all(s))
s = {}
print(all(s))
s = {'0': 'True'}
print(all(s))
# Результат:
False
True
False
True
True