如何在Python中比较2D列表的相等性?

发布于 2021-01-29 14:58:19

给出两个列表:

a = [[1,2],[3,4]]
b = [[1,2],[3,4]]

我怎么写compare这样的:

compare(a,b) => true
关注者
0
被浏览
107
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    你想要这个吗:

    >>> a = [[1,2],[3,4]]
    >>> b = [[1,2],[3,4]]
    >>> a == b
    True
    

    注意:==当List处于无序状态时(例如,( 和中的 通知顺序a``b))无用

    >>> a = [[3,4],[1,2]]
    >>> b = [[1,2],[3,4]]
    >>> a == b
    False
    

    请参阅此问题以获取更多参考:如何在python中比较列表/集合的列表?

    编辑 :感谢@dr jimbob

    如果要在排序后进行比较,可以使用sorted(a)==sorted(b)
    但是再说一遍,如果c = [[4,3], [2,1]]sorted(c) == sorted(a) == False是因为,sorted(c)与众不同[[2,1],[4,3]]不是深度排序

    为此,您必须使用链接答案中的技术。由于我也在学习Python :)



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看