Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

주어진 속성 인덱스를 기반으로 테이블을 정렬하는 Python 프로그램

<시간/>

운동선수에 대한 정보가 포함된 2차원 목록이 있다고 가정합니다. 이 정보는 계급, 나이, 키입니다. 각 행에는 다른 선수에 대한 정보가 포함되어 있습니다. 또 다른 숫자 k가 있습니다. k번째 속성을 기준으로 데이터를 정렬해야 합니다.

따라서 입력이 다음과 같으면

순위 나이 높이
1 25 190
2 35 180
3 33 185
4 26 175
5 35 180

그리고 k =1.

그러면 출력은

순위 나이 높이
1 25 190
4 26 175
3 33 185
2 35 180
5 35 180

[[1, 25, 190], [4, 26, 175], [3, 33, 185], [2, 35, 180], [5, 35, 180]]

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • info

    라는 2차원 배열에 대해 sort() 함수를 호출합니다.
  • k번째 인수를 기준으로 정렬하는 하나의 함수를 정의하고 이를 sort() 함수의 키 매개변수에 전달합니다.

예시

이해를 돕기 위해 다음 구현을 살펴보겠습니다.

def solve(info, k):
   info.sort(key = lambda x: x[k])
   return info

info = [[1, 25, 190],[2, 35, 180],[3, 33, 185],[4, 26, 175],[5, 35, 180]]
k = 1
print(solve(info, k))

입력

[[1, 25, 190],[2, 35, 180],[3, 33, 185],[4, 26, 175],[5, 35, 180]], 1

출력

[[1, 25, 190], [4, 26, 175], [3, 33, 185], [2, 35, 180], [5, 35, 180]]