逆順を含む複数のキーによるリストの並べ替え
Python には、リストを並べ替えるためのsorted() 関数が用意されています。複数のキーで並べ替えるには、キー引数としてラムダ関数を使用できます。ただし、複数のキーでソートする場合、デフォルトではすべてのキーが昇順でソートされます。
タプルのリストを考えてみましょう:
<code class="python">myList = [(ele1A, ele2A), (ele1B, ele2B), (ele1C, ele2C)]</code>
両方のキーを使用してこのリストをソートするには、次のコードを実行します。使用できます:
<code class="python">sortedList = sorted(myList, key=lambda y: (y[0].lower(), y[1]))</code>
このコードは、要素を最初のキーで昇順に並べ替え、次に 2 番目のキーで昇順に並べ替えます。 1 つのキーを使用して逆順に並べ替えるには、ラムダ関数を変更できます。
<code class="python">sortedList = sorted(myList, key=lambda y: (y[0].lower(), -y[1]))</code>
この例では、y[1] の前の負号により 2 番目のキーの並べ替え順序が逆になります。ただし、このコードでは、すべての要素が 2 番目のキーによって逆順に並べ替えられます。
一方のキーによって逆順に、もう一方のキーによって昇順に並べ替えるには、次のコードを使用できます:
<code class="python">sortedList = sorted(myList, key=lambda y: (-y[0].lower(), y[1]))</code>
ここでは、最初のキーのソート順序を逆にするために、最初のキーに負号が使用されています。
以上がPython で逆順を含む、複数のキーを持つリストを並べ替える方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。