简单比较两个列表和字典的方法
如何简单地比较两个列表或字典,
例如:
assert orig_list == new_list
如果我想在Python的nose测试中检查两个列表,
有没有什么内置的函数可以让我使用?
在测试时比较两个列表是个坏习惯吗?(因为我从来没见过)
如果没有内置的,nose插件里也没有,有没有什么方便的包可以帮我做到这一点。
3 个回答
0
这是一种方法,就是手动检查每个元素是否相等。
(len(a) == len(b)) and (all(ai == bi for ai,bi in zip(a,b)))
1
set可以用来在两个列表或字典之间进行这样的操作!
set(orig_list) & set(new_list)
11
你可以使用 assertListEqual(a, b) 和 assertDictEqual(a, b) 这两个方法,它们来自 unittest
这个库。