Автор оригинала: Pankaj Kumar.
Функция Python All () является одним из встроенных функций. Требуется ИТЕРИТЕЛЬНО как аргумент и возврат Правда
Если все элементы утечтимы верны или пустые.
Python All () Функция
Функция Python All () – это метод утилиты и ярлык ниже функции.
def all(iterable): for element in iterable: if not element: return False return True
Давайте посмотрим на некоторые примеры функции Python All ().
Пример Python All () с логией
# iterable has all True list_bools = [True, True, True] print(all(list_bools)) # iterable all elements are not True list_bools = [True, True, False] print(all(list_bools))
Выход:
True False
Python All () с пустым ИТ
# iterable is empty list_bools = [] print(all(list_bools))
Выход:
True
Python All () со списком строк
# iterable elements are True string list_strs = ['True', 'True'] print(all(list_strs)) # iterable all elements are true string with different case list_strs = ['True', 'true'] print(all(list_strs)) # iterable all elements are not true string list_strs = ['abc', 'true'] print(all(list_strs)) # iterable all elements are empty string list_strs = ['', 'true'] print(all(list_strs))
Выход:
True True True False
Когда мы хотим объекта логическое значение, Python ищет __bool__
функция в объекте.
Если __bool__
Функция не определена, то Лен ()
Функция называется, если она определена. Объектное логическое значение считается правдой, если Лен ()
Выход не равен нулю.
Если класс определяет ни __лен __ ()
ни __bool __ ()
Функции, все его экземпляры считаются верными.
Python All () с пользовательскими объектами
Давайте тестируем приведенное выше объяснение пользовательским классом. Мы создадим класс пользовательских лиц и использую его объекты в списке и называть все () на ней.
class Person: name = "" def __init__(self, n): self.name = n list_objs = [Person("Pankaj"), Person("Lisa")] print(all(list_objs)) list_objs = [Person("A"), Person("David")] print(all(list_objs))
Выход:
True True
Поскольку наш объект не имеет __LEN __ () и __Bool __ () функции функции, это логическое значение верно.
Давайте пойдем вперед и определим функцию __leen __ () для класса человека, как показано ниже.
def __len__(self): print('len function called') return len(self.name)
Теперь вывод ранних фрагментов кода будет:
len function called len function called True len function called len function called True
Обратите внимание, что Лен ()
Функция вызывается для каждого объекта, когда все () используется со списком объектов человека.
Теперь давайте определим __bool__
Функция для класса человека и посмотреть, что происходит с вышеуказанным кодом.
def __bool__(self): print('bool function called') if len(self.name) > 3: return True else: return False
Выход:
bool function called bool function called True bool function called False
Из вывода ясно, что если функция __Bool__ определяется, то она используется для получения логического значения объекта Python. Обратите внимание, что второй список все () вывод функции является ложным, потому что «A ‘длина меньше 3.
Это все для Python All () Функциональные примеры.
Ссылка: Официальная документация