Сегодня мы расскажем о функциях все (), любыми () и их использованием в Python. Прежде чем перейти к всем и любую, нам нужно обсудить «или» и «и» и “Оператор
А также оператор
print(True and False) # False print(False and False) # False print(True and True) # True
Если какое-либо условие является ложным при использовании оператора «И», конечный результат является ложным
Или оператор
print(True or False) # True print(False or False) # False print(True or True) # True
Если какое-либо условие верно при использовании оператора «или», конечный результат верно
Любой
любой () в основном серия операторов “или”. Для параметра и возвращает True Itealable (List, Set, Tupple, словарь) (список, набор, кортеж, словарь), и возвращает true.
print(any([True , False, True])) # True print(any([False , False, False])) # False print(any([True , True, True])) # True
Если пропущено пустое числовое значение, любой () возвращает false
Все
Все () – серия операторов “и”. Похоже на любое (), он принимает утечку в качестве параметра. Он возвращает True только в том случае, если все элементы в Iterable являются верными.
print(all([True , False, True])) # False print(all([False , False, False])) # False print(all([True , True, True])) # True
Если пропущено пустое намерение, все () возвращает true
Сравнение всех и Любые
На основании вышеуказанных двух секций, вы можете думать о том случае, когда они оба вернут одинаковое значение? Ответ дан в конце
Дело 1
Давайте предположим, что у нас есть список целых чисел и хочу сделать пару проверок
Каждый элемент в списке больше 5
Вот как мы сделаем это с контуром для цикла
import random ## Check if all elements are greater than 5 def func(): lst = [random.randint(0,10) for _ in range(20)] for i in lst: if i < 5: return False return True
Вот как мы сделаем это со всеми () функцией
import random ## Check if all elements are greater than 5 def func(): lst = [random.randint(0,10) for _ in range(20)] answer = all(i>5 for i in lst) return answer
Любой элемент больше 5
Вот как мы сделаем это с контуром для цикла
import random ## Check if any element is greater than 5 def func(): lst = [random.randint(0,10) for _ in range(20)] print(lst) for i in lst: if i > 5: return True return False print(func())
Вот как мы сделаем это с любым () функция
import random ## Check if any element is greater than 5 def func(): lst = [random.randint(0,10) for _ in range(20)] answer = any(i>5 for i in lst) return answer
Case2.
Это полезно, когда вы используете серию операторов «И» или «или». Это заставляет ваш код выглядеть чище.
# Assume some complex conditions condition1 = 5==6 condition2 = 5<7 condition3 = 10>0 condition4 = 10!=10 condition5 = 20<10 # without any if condition1 or condition2 or condition3 or condition4 or condition5: print("without any") #with any lst = [condition1,condition2,condition3,condition4,condition5] if any(lst): print("with any")
Отвечать на вопрос
И любой (), так и все () вернут false, если все элементы в Iterable являются ложными
lst = [False,False,False] print(any(last)) #False print(all(last)) #False
Оригинал: “https://dev.to/rahulbanerjee99/day18-any-and-all-in-python-2555”