Blenderにタプルのリストがあるpythonコード
_scores=[(1489,"Sean"), (2850,"Bob"), (276,"Crap Player"), (78495, "Great Player"), (8473, "Damian"), (4860, "Andy"), (0, "Stephen")]
_
これを使ってスコアでソートしようとしています
_sorted(scores, key=lambda score: score[0], reverse=True)
_
しかし、これは機能していません。なぜか分かりません。任意のヒント?
Score
とname
フィールドを持つ新しいscore
クラスを作成するのが、おそらくより良い実装だと私は考えました。
編集:
早い返事をありがとう
sorted
メソッドでエラーは発生しませんでしたが、並べ替えは行われませんでした。私はsort()
を使用しましたが、機能します。
pythonは、Blenderで少し奇妙だと思いますか?
ありがとう!
ただやる:
_print sorted(scores, reverse=True)
[(78495, 'Great Player'), (8473, 'Damian'), (4860, 'Andy'), (2850, 'Bob'), (1489, 'Sean'), (276, 'Crap Player'), (0, 'Stephen')]
_
所定の位置に並べ替える場合はscores.sort(reverse=True)
を使用できます。また、タプルのリストの場合はデフォルトで、最初のアイテム、2番目のアイテムで並べ替えます。
sorted()
は、ソートされたシーケンスを返します。リストをその場で並べ替える場合は、list.sort()
を使用します。
scores.sort(reverse=True)
>>> print scores
[(78495, 'Great Player'), (8473, 'Damian'), (4860, 'Andy'), (2850, 'Bob'), (1489, 'Sean'), (276, 'Crap Player'), (0, 'Stephen')]