not any(d for d in l)
эквивалентно закону Де Моргана - all(not d for d in l)
, но применяется только один оператор not
. Поведение при коротком замыкании также эквивалентно.
Редактировать 1 : внутренний генэксп фактически (безобиден, но) избыточен: not any(l)
быстрее и лаконичнее.
Редактировать 2 : в комментарии утверждается, что all(not d for d in l)
"больше, чем вы хотите выразить", чем not any(l)
, и я категорически не согласен: даже на естественном языке "все элементы списка не населенный "не более нормальный, прямой или ясный, чем" ни один элемент списка не заполнен "- помимо абсолютной логической эквивалентности по законам логики, два способа выражения очень близки и примерно эквивалентны с точки зрения человека психология тоже.