给出两个清单:
a = [[1,2],[3,4]]
b = [[1,2],[3,4]]
我如何写compare
这样:
compare(a,b) => true
答案 0 :(得分:13)
你想要这个:
>>> a = [[1,2],[3,4]]
>>> b = [[1,2],[3,4]]
>>> a == b
True
注意:如果列表无序,==
无用,例如{{1>}和a
中的通知顺序)
b
请参阅此问题以获取进一步参考:How to compare a list of lists/sets in python?
修改:感谢@dr jimbob
如果您想在排序后进行比较,可以使用>>> a = [[3,4],[1,2]]
>>> b = [[1,2],[3,4]]
>>> a == b
False
但又有一点,如果sorted(a)==sorted(b)
然后c = [[4,3], [2,1]]
因为sorted(c) == sorted(a) == False
不同sorted(c)
(没有深入排序)
为此您必须使用链接答案中的技巧。因为我也在学习Python:)
答案 1 :(得分:1)
简单:
def compare(a, b): return a == b
另一种方法是使用lambda
创建匿名函数:
compare = lambda a, b: a == b