比较两个数组,顺序很重要

Comparing between two arrays, order matters

第一周 Python。 我想比较两个数组的值,其中顺序很重要并打印出文本。这是我拥有的:

a =[2, 3, 4, 2, 6]
b =[1, 2, 3, 4, 5]
c =[0, 1, 2, 3, 4]

compare = map(lambda x, y: x > y, a, b)
print(list(compare))

我得到:

[True, True, True, False, True]

而不是打印列表(比较) True 和 False 我想打印 'list a is below list b' if False。如果存在多个 False,它只需要打印一次。我试过很多打印语句都没有成功。

if compare == False:
    print ('list a is below list b')

if compare is False:
    print ('list a is below list b')

蟋蟀

我试过很多其他方法。

是否还有一种方法可以进行循环比较,如果 a>b、a>c 和 b>c,则打印 ('list b is below list c')。列表之间的顺序很重要。我可以执行 compare = map lambda 3 次,但我想知道是否有办法循环它?

谢谢!

如果要检查 compare 至少有一个值 False,只需使用 in 运算符。

if False in compare:
    do action

您可以同时比较 3 个列表并使用 all()all() 函数 returns True 当且仅当提供给它的迭代器中的所有条件都是 True。 -

a =[2, 3, 4, 2, 6]
b =[1, 2, 3, 4, 5]
c =[0, 1, 2, 3, 4]

compare = map(lambda x, y, z: x > y and y > z, a, b, c)
print(all(compare))

输出-

False

因为第三个索引是False

如果我更新 a -

>>> a =[2, 3, 4, 5, 6]
>>> b =[1, 2, 3, 4, 5]
>>> c =[0, 1, 2, 3, 4]
>>> compare = map(lambda x, y, z: x > y and y > z, a, b, c)
>>> print(all(compare))
True