2015-01-31 2 views
0

벡터의 마지막 요소를 기준으로 벡터 목록을 정렬해야합니다. 나는 list.sort(key=something) 메서드로 가능해야한다고 생각했지만, 모두 sorted() 함수를 사용하는 예제이며, 그 키 = 무언가가 벡터의 마지막 요소를 가리킬 수있는 방법이 명확하지 않습니다. I는 각 벡터의 번째 원소를 이용하여 3 개 벡터를 재정렬 할 필요정렬 방법의 주요 기능

[ [1,2], [2,3], [3,1] ] 

, 그 결과는 다음

[ [3,1], [1,2], [2,3] ] 

답변

1

확실히 생성한다 : 여기서

3 개 벡터 내 목록 당신은 그것을 할 수 있습니다. list.sortsorted 사이의 주요 차이점은 sorted 당신이 전달 임의의 반복 가능한에서 새 (분류)리스트를 생성하는 반면 list.sort 목록을 소요하고 장소에 정렬한다는 것을

lst = [ [1,2], [2,3], [3,1] ] 
def last_val_key(vec): 
    return vec[-1] 
lst.sort(key=last_val_key) 
print lst 

참고. 두 제품 모두 key 인수를 받아 두 경우 모두 똑같습니다.

+0

감사합니다. 당신의 본보기는 마침내 어떻게 작동하는지 이해하게했습니다. – gciriani