简介
在编程中,经常需要检查两个列表是否包含相同的元素,而不考虑它们的顺序。这在各种情况下都很有用,例如检查两组数据是否具有相同的值,或者验证函数是否返回预期的输出。在这个挑战中,你将编写一个函数来检查两个列表是否具有相同的内容。
在编程中,经常需要检查两个列表是否包含相同的元素,而不考虑它们的顺序。这在各种情况下都很有用,例如检查两组数据是否具有相同的值,或者验证函数是否返回预期的输出。在这个挑战中,你将编写一个函数来检查两个列表是否具有相同的内容。
编写一个函数 have_same_contents(a, b),它接受两个列表作为参数,如果两个列表具有相同的内容,则返回 True,否则返回 False。该函数应检查两个列表是否包含相同的元素,而不考虑它们的顺序。
要解决这个问题,你可以按照以下步骤进行:
set() 来找到唯一值。for 循环遍历它们,比较每个列表中每个唯一值的 count()。False,否则返回 True。def have_same_contents(a, b):
for v in set(a + b):
if a.count(v)!= b.count(v):
return False
return True
have_same_contents([1, 2, 4], [2, 4, 1]) ## True
在这个挑战中,你已经学会了如何检查两个列表是否具有相同的内容,而不考虑它们的顺序。通过使用 set() 函数并遍历唯一值,你可以比较两个列表中每个元素的 count(),以确定它们是否具有相同的内容。