Search

tuple을 원소로 가지는 list의 sort

tuple_list = [(3, -1), (4, 10), (-5, 100)] tuple_list.sort() # -> [(4, 10), (3, -1), (-5, 100)] 맨 앞의 요소들을 기준으로 sort가 된다. 만약 첫 요소가 같고 뒤에 요소가 다르다면? tuple_list = [(1, 10), (1, 20), (1, -10), (2, 100)] print(sorted(tuple_list)) # -> [(1, -10), (1, 10), (1, 20), (2, 100)] 첫 요소가 같은 것들에 대해서는 두번째 요소들로 배열된다!
Python
복사
두번째 요소로 특정해서 sort하고싶다면?
tuple_list.sort(key=lambda x : x[1]) # -> [(1, -10), (1, 10), (1, 20), (2, 100)] 튜플의 두 번째 원소로 정렬, 이후 같은 값이 나오면 첫 번째 원소 정렬하는 방식 tuple_list.sort(key=lambda x: (x[1], x[0]))
Python
복사