Функция all() в Python — как использовать

В этом уроке вы узнаете, как использовать функцию Python all() для проверки истинности всех элементов итерируемого объекта.

Содержание

Знакомство с функцией Python all()

Функция Python all() принимает итерируемый объект и возвращает True, если все элементы итерируемого объекта равны True. Она также возвращает True, если итерируемый объект пуст.

Вот синтаксис функции all():

all(iterable)

Следующий пример иллюстрирует функции all():

mask = [True, True, False]
result = all(mask)
print(result)  # 👉 False

mask = [True, True, True]
result = all(mask)
print(result)  # 👉 True

result = all([])
print(result)  # 👉 True

Как это работает.

  • Во-первых, [True, True, False] имеет элемент со значением False, функция all() возвращает False.
  • Во-вторых, [True, True, True] содержит все элементы со значением True, функция all() возвращает True.
  • В-третьих, [] — это пустой итерируемый объект, поэтому функция all() также возвращает True.

Практические примеры функции all()

Давайте рассмотрим несколько практических примеров использования функции all().

1) Упрощение сложного условия

В следующем примере проверяется, больше ли длина v нуля и меньше ли 25, а также содержит ли она только буквенно-цифровые символы:

v = 'Python'
if len(v) > 0 and len(v) < 25 and v.isalnum():
    print(v)

Условие довольно сложное. Чтобы сделать его короче, можно заменить все операторы и функцией all() следующим образом:

v = 'Python'
valid = all([len(v) > 0, len(v) < 25, v.isalnum()])
if valid:
    print(v)

В этом примере значение valid принимает значение True, если все условия внутри кортежа, переданного в all(), возвращают значение True.

2) Проверка итераций чисел

В следующем примере функция all() используется для проверки того, все ли числа итерируемого объекта больше или равны четырем:

ratings = [3, 5, 4, 2, 4, 5]
has_good_rating = all([rating >= 4 for rating in ratings])
print(has_good_rating)  # false

Как это работает.

  • Во-первых, используйте списочное понимание, чтобы преобразовать список оценок в список True и False.

Следующий код

[rating >= 4 for rating in ratings]

возвращает список логических значений:

[False, True, True, False, True, True]
  • Во-вторых, передайте результат понимания списка в функцию all(). Таким образом, функция all() возвращает False, поскольку список содержит некоторые элементы False.

Похожие посты
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *