sorted関数

関数 sorted は、リスト、タプル、セット、辞書などのイテラブルオブジェクトからソートされたリストを返します。デフォルトでは、関数はリストの要素をアルファベット順または昇順でソートします。

第一引数には、ソートするオブジェクトを指定します。

第二引数(オプション)のメソッドパラメータでは、ソートの方向を指定する reverse パラメータを指定できます。デフォルト値は False です。

第三引数(オプション)では、ソート基準を持つコールバック関数を指定できます。

構文

pythonsorted(オブジェクト, [リスト反転モード], [ソート用関数])

例

リストを逆順にソートしてみましょう:

pythonlst1 = ['c', 'a', 'd', 'b', 'f', 'e']
lst2 = sorted(lst1, reverse=True)
print(lst2)

コード実行結果:

python['f', 'e', 'd', 'c', 'b', 'a']

例

次に、数字からなるリストを逆順でソートしてみましょう:

pythonlst1 = [10, 8, 2, 6, 14]
lst2 = sorted(lst1, reverse=True)
print(lst2)

コード実行結果:

python[14, 10, 8, 6, 2]

例

関数 sorted のパラメータを指定せずに、文字のリストをソートしてみましょう:

pythonlst1 = ['c', 'a', 'd', 'b', 'f', 'e']
lst2 = sorted(lst1)
print(lst2)

コード実行結果:

python['a', 'b', 'c', 'd', 'e', 'f']

例

次に、数字からなるリストをソートしてみましょう:

pythonlst1 = [10, 8, 2, 6, 14]
lst2 = sorted(lst1)
print(lst2)

コード実行結果:

python[2, 6, 8, 10, 14]

例

セットをソートしてみましょう:

pythonst = {'a', 'b', 'c', 'd', 'e', 'f'}
lst = sorted(st)
print(lst)

コード実行結果:

python['a', 'b', 'c', 'd', 'e', 'f']

例

タプルをソートしてみましょう:

pythontpl = ('a', 'b', 'c', 'd', 'e', 'f')
lst = sorted(tpl)
print(lst)

コード実行結果:

python['a', 'b', 'c', 'd', 'e', 'f']

例

辞書をソートしてみましょう:

pythondct = {
  '6': 'f',
  '2': 'b',
  '4': 'd',
  '3': 'c',
  '1': 'a',
  '5': 'e'
}

lst = sorted(dct)
print(lst)

コード実行後、関数はソートされた辞書のキーのリストを返します:

python['1', '2', '3', '4', '5', '6']

例

関数 sorted を使用して文字列をソートすることもできます:

pythonstr = 'dacbfe'
lst = sorted(str)
print(lst)

しかし、実行後もソートされたリストが返されます:

python['a', 'b', 'c', 'd', 'e', 'f']

関連項目

  • リストの要素をソートするメソッド sort,
  • イテラブルオブジェクトをフィルタリングする関数 filter,