1 2 3 4 5 6 7 8 | # 以下は、ipython(pythonインタープリタモードの便利版)の結果をそのまま表示しています。 In [1]: list = [10, 6, 2, 5, 8] In [2]: list.sort() In [3]: list Out[3]: [2, 5, 6, 8, 10] In [4]: list.sort(reverse=True) In [5]: list Out[5]: [10, 8, 6, 5, 2] |
sort()メソッドを実行することで、昇順に値の並び替えが行われます。
降順にソーティングしたい場合は、sort(reverse=True)と引数情報を与えてあげればOKです。
次に、辞書配列型(連想配列型)についてです。
連想配列では、メソッドレベルでソーティング関数が準備されているわけではありませんので、
以下のようにsorted()関数を呼び出しましょう。
1 2 3 4 5 6 7 8 9 | In [6]: dict = {10:1, 4:9, 8:7, 6:2} In [7]: sorted( dict.keys() ) Out[7]: [4, 6, 8, 10] In [9]: sorted( dict.keys(), reverse=True ) Out[9]: [10, 8, 6, 4] In [10]: sorted( dict.values() ) Out[10]: [1, 2, 7, 9] In [11]: sorted( dict.values(), reverse=True ) Out[11]: [9, 7, 2, 1] |
使い方はリスト型のsort()配列とほぼ同じですが、 辞書のキーor値のどちらか一方のみがリスト型として出力される点に注意するようにしてください。
ちなみに、辞書配列のキーをリストとして返す(キーの登録順番との相関がない点に注意)メソッドは keys()で、値をリストとして返すのはvalues()メソッドとなります。