>  기사  >  백엔드 개발  >  혼합 순서로 목록 목록을 정렬하는 방법은 무엇입니까?

혼합 순서로 목록 목록을 정렬하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-21 16:33:29603검색

How to Sort Lists of Lists with Mixed Ordering?

혼합 순서로 목록 목록 정렬

두 개의 요소가 있는 목록 목록이 주어지면 특정 순서로 정렬하는 것이 어려울 수 있습니다. 일반적으로 정렬은 하나의 기준을 사용하여 수행됩니다. 하지만 이 경우 첫 번째 요소를 기준으로 내림차순, 두 번째 요소를 오름차순으로 정렬해야 합니다.

이러한 혼합 정렬을 구현하려면 Python의 람다 함수와 정렬 방법을 활용할 수 있습니다. 정렬 메서드의 주요 인수는 정렬 순서를 결정하는 함수를 사용합니다. 우리가 제공하는 함수는 각 목록의 두 요소를 모두 고려합니다.

두 요소를 모두 처리하는 결합 키를 생성하려면 다음 람다 함수를 사용할 수 있습니다.

<code class="python">lambda k: (k[0], -k[1])</code>

여기서는 튜플을 사용하여 두 요소를 결합합니다. 첫 번째 요소는 목록의 첫 번째 요소를 나타내고 두 번째 요소는 두 번째 요소의 음수를 나타냅니다. 이 부정은 두 번째 요소의 내림차순을 보장합니다.

이제 정렬 메서드에서 이 람다 함수를 사용할 수 있습니다.

<code class="python">L.sort(key=lambda k: (k[0], -k[1]), reverse=True)</code>

reverse=True 인수는 정렬이 수행되어야 함을 지정합니다. 이는 첫 번째 요소에 대한 내림차순 요구 사항에 부합합니다.

결과적으로 목록 L은 첫 번째 요소가 내림차순으로, 두 번째 요소가 오름차순으로 정렬됩니다.

<code class="python">[['b', 1], ['b', 2], ['b', 3], ['a', 1], ['a', 2], ['a', 3]]</code>

위 내용은 혼합 순서로 목록 목록을 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.