Существует две встроенные функции, которые позволяют анализировать итерируемые объекты без необходимости писать тривиальные и избыточные циклы for
. Это all
и any
.any
возвращает True
, если хотя бы одно значение истинно; all
возвращает True
, только если все значения истинны. Для пустого итерируемого объекта all
возвращает True
, а any
— False
.
Обе функции особенно полезны в сочетании со списковыми включениями (list comprehensions):
package_broken = any(
part.is_broken() for part in package.get_parts()
)
package_ok = all(
part.ok() for part in package.get_parts()
)
Функции
any
и all
зачастую взаимозаменяемы благодаря законам де Моргана. Используй ту, с которой код будет понятнее.👉@BookPython
>>Click here to continue<<