-5

我最近开始了解 Python。这就是我正在做的事情。请提示如何开始。

编写一个调用函数sameElements,将两个列表作为其参数并返回 True 或 False。当第二个列表只是第一个列表的重新排列时,它应该返回 True,这意味着第二个列表具有完全相同的元素,只是顺序不同(甚至可能相同)。您可以假设两个列表中的数据项属于同一类型。

例如:

sameElements([1,2,3], [2,3,1])
True
sameElements([1,2,3], [3,2,2])
False
sameElements([1,2,3], [3,2,1,1])
False
sameElements([1,1,2], [1,2,1])
True
sameElements([1,1,2], [2,1])
False
sameElements(['a','c','a','b'], ['b','a','a','c'])
True

注意:

  • 对于长度不同的列表,答案将始终为 False。
  • 您的函数不应修改任何一个列表,因此您可能需要复制一个或多个列表。
  • 允许重复,并且需要在两个列表中出现相同的次数。
4

1 回答 1

4

这里给你一个提示

>>> from collections import Counter
>>> Counter(['a','c','a','b']) == Counter(['b','a','a','c'])
True

但你可能会告诉我们你不能使用Counter

于 2013-10-18T05:18:07.220 回答