Pythonでは、lambda
式とsorted
関数を組み合わせてリストをソートすることができます。lambda
は無名関数のことを指し、関数の名前が無いのが特徴です。
lambda式の基本
lambda
式は以下のように定義します。
a = lambda x : x + 10
print(a(3)) # 実行結果: 13
この例では、変数x
に対して、10を足すという関数をa
として定義しています。そのため、a
に3を入れると13という結果を返します。
lambda式を利用したリストのソート
lambda
式は、リストをソートする際に非常に便利です。sorted
関数のkey
パラメータにlambda
式を指定することで、複雑なソートも可能になります。
例えば、以下のようにリスト内の辞書を特定のキーでソートすることができます。
data = [
{ 'name': 'Taro', 'city': 'Tokyo', 'birthday': 19990303 },
{ 'name': 'Hanako', 'city': 'Osaka', 'birthday': 19990301 },
{ 'name': 'Jiro', 'city': 'Fukuoka', 'birthday': 19990302 }
]
sorted_data = sorted(data, key=lambda x: x['birthday'])
print(sorted_data)
このコードは、birthday
をキーとして辞書を並び替えます。
まとめ
Pythonのlambda
式とsorted
関数を組み合わせることで、リストのソート処理を柔軟に行うことができます。これらの機能を積極的に活用して、Pythonプログラミングの幅を広げてみてください。