\

Pythonでは、lambda式を利用してリストをソートすることができます。lambdaは無名関数のことを指します。関数の名前が無いのが特徴です。

lambda式の基本

lambda式は以下のように定義します。

a = lambda x : x + 10
print(a(3))  # 実行結果: 13

この例では、変数xに対して、10を足すという関数をaとして定義しています。そのため、aに3を入れると13という結果を返します。

リストのソートに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)

このコードでは、lambdalambda x: x['birthday']sorted関数のkeyパラメータに指定しています。これにより、dataリストの各要素(辞書)は'birthday'キーの値に基づいてソートされます。

以上が、Pythonでlambda式を利用したソート処理の基本的な使い方です。リストのソートにおいて、lambda式は非常に強力なツールとなります。ぜひ積極的に活用してみてください。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です