-5

最近Pythonを知り始めました。これは私が取り組んでいるものです。始め方のヒントを教えてください。

sameElementsパラメータとして 2 つのリストを受け取り、True または False を返す関数を作成します。2 番目のリストが最初のリストの単なる再配置である場合、True を返す必要があります。つまり、2 番目のリストがまったく同じ要素を、異なる (または場合によっては同じ) 順序で持っていることを意味します。2 つのリストのデータ項目は同じタイプであると想定できます。

例えば:

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 になります。
  • 関数はどちらのリストも変更してはならないため、1 つ以上のリストのコピーを作成する必要がある場合があります。
  • 重複は許可され、両方のリストに同じ回数表示される必要があります。
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 に答える