怎么样:
if all([form1.is_valid(), form2.is_valid()]):
...
在一般情况下,可以使用列表理解,以便预先计算结果(与在此上下文中通常使用的生成器表达式相反)。例如:
if all([ form.is_valid() for form in (form1,form2) ])
这也可以很好地扩展到任意数量的条件…唯一的问题是它们都需要用“ and
”而不是if foo and bar or baz: ...
。
(对于非短路or
,您可以使用any
代替all
)。