使用for循环检查“if”中的多个条件

2024-03-29 06:58:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须检查if中的多个“and”条件 例如:

if (a[1]==b[1]) and (a[2]==b[2]) and (a[3]==b[3]) and (a[4]==b[4]):

我能用for循环来做上面的事吗

^{pr2}$

上面的建议不会起作用,因为它将条件设置为真,即使其中一个是真的。在


Tags: andforif条件建议pr2
2条回答

只需在此处使用^{}

if all(a[i]==b[i] for i in range(1, 5)):

从文件中:

Return True if all elements of the iterable are true (or if the iterable is empty).

并且(a[i]==b[i] for i in range(1, 5))返回generator(它是一个iterable),然后all()返回{},如果生成器中的所有元素都是{},那么{}。就像你的代码一样。在

你能做到的

if all(a[i]==b[i] for i in range(1,5)):
    # logic here

all()的用法:

  1. 如果iterable中的所有元素都是True,则返回True
  2. 如果一个元素是False,则返回False

例如:all([True,True])>;Trueall([False,True])>;False

相关问题 更多 >