我想知道在 python 中是否有一种比这更简洁的方式来比较两个列表的元素(例如,列表 1 中的元素大于列表 2 中的元素):
t1 = [1,1,0]
t2 = [2,2,1]
for I in range(len(t1)):
if t1[I] > t2[I]:
return False
提前致谢!
请您参考如下方法:
使用 any() 或 all() 来测试(分别)条件是否适用于列表中的任何元素或所有元素,加上 zip 将两个列表粘在一起。比如题中的代码可以这样实现更简洁:
not any(x > y for x, y in zip(t1, t2))
=> True
或者等效地,正如@squiguy 在评论中指出的那样:
all(x <= y for x, y in zip(t1, t2))
=> True
