1 つのキーを逆順に、もう 1 つのキーを大文字と小文字を区別せずに並べ替える
Python には、複数のキーによる並べ替えなど、リストを並べ替えるためのさまざまな方法が用意されています。キー。ただし、標準の並べ替え関数では、常に望ましい柔軟性が提供されるとは限りません。
[(ele1A, ele2A)、(ele1B, ele2B)、(ele1C, ele2C)] など、複数の要素を含むタプルを含むリストを考えてみましょう。 。このリストを 2 つのキー (1 つは昇順、もう 1 つは降順) に基づいて並べ替えると同時に、1 つのキーで大文字と小文字を区別しないようにするには、わずかにカスタマイズされた並べ替えアプローチを採用する必要があります。
Python のsorted() 関数ラムダ関数を使用してカスタムの並べ替えキーを指定できます。この機能を利用すると、次のようにリストを並べ替えることができます。
<code class="python"># Sort by the first key in ascending order and the second key in descending order sortedList = sorted(myList, key = lambda y: (y[0].lower(), -y[1])) # Or, sort by the first key in descending order and the second key in ascending order sortedList = sorted(myList, key = lambda y: (-y[0].lower(), y[1])) # Or, sort by both keys in descending order sortedList = sorted(myList, key = lambda y: (-y[0].lower(), -y[1]))</code>
ラムダ関数の 2 番目のキー (-y[1]) の値を否定することで、効果的に逆順に並べ替えることができます。さらに、最初のキーで lower() を使用して、並べ替えの実行中に大文字と小文字を区別しないようにします。
このアプローチにより、複雑な基準に基づいてリストを柔軟に並べ替えることができ、特定の並べ替え要件を効果的に処理できるようになります。
以上がPythonで1つのキーを逆順に、もう1つのキーを大文字と小文字を区別せずにリストを並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。