nums = [3,1,2]
nums.sort()
print(nums)
<<< [1,2,3]
nums = [3,1,2]
nums_list = sorted(nums)
print(news_list)
<<< [1,2,3]
words = ["banana", "apple", "kiwi"]
words.sort(key=len) #문자열 기준 4, 5, 6
<<< ['kiwi', 'apple', 'banana']
value = [[5, 3], [2, 8], [4, 5]]
# 첫 번째 값 기준 정렬
value.sort(key=lambda x: x[0])
<<< [[2,8], [4,5], [5,3]]
# 두 번째 값 기준 정렬
value.sort(key=lambda x: x[1])
<<< [[5,3], [4,5], [2,8]]
# 두 값의 합 기준 정렬
value.sort(key=lambda x: x[0] + x[1], reverse=True)
<<< [[2, 8], [4, 5], [5, 3]]
배열의 다음과 같이 있을때 합을 기준으로 정렬해주고 만약 합이 같다면 첫번째 항을 기준으로 정렬
value = [[5, 3], [6, 9], [4, 5], [6, 3], [2, 8], [5, 4]]
new_value = sorted(value, key= lambda x: (x[0]+x[1], x[0]), reverse=True)
<<< [[6, 9], [2, 8], [6, 3], [5, 4], [4, 5], [5, 3]]
sort할 때, 기본 정렬시에는 대문자가 소문자보다 작게 간주됨
chars = ['a', 'b', 'A', 'B']
print(sorted(chars))
<<< 출력: ['A', 'B', 'a', 'b']
✅ 대소문자 무시하고 정렬하고 싶다면?
chars = ['a', 'b', 'A', 'B']
print(sorted(chars, key=str.lower))
# 출력: ['a', 'A', 'b', 'B']