简单比较两个列表和字典的方法

5 投票
3 回答
1478 浏览
提问于 2025-04-17 21:35

如何简单地比较两个列表或字典,

例如:

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 这个库。

撰写回答