파이썬에서 key 파라미터를 활용한 정렬
파이썬의 정렬 함수 **sorted()**와 리스트의 .sort() 메소드는 key 파라미터를 지원합니다. 이를 활용하면 복잡한 기준으로 객체를 정렬할 수 있습니다. 이 글에서는 key 파라미터 사용법과 여러 예제를 통해 이해를 돕겠습니다.
기본 사용법
key 파라미터는 정렬 기준을 제공하는 함수를 값으로 받습니다. 이 함수는 정렬하려는 각 요소에 대해 호출되며, 요소를 비교하는 데 사용될 값을 반환합니다.
예제: 문자열 길이로 정렬
words = ["banana", "pie", "Washington", "book"]
sorted_words = sorted(words, key=len)
print(sorted_words)
실행 결과:
['pie', 'book', 'banana', 'Washington']
복잡한 객체 정렬
튜플이나 딕셔너리와 같은 복잡한 객체를 정렬할 때 key 파라미터가 유용합니다.
예제: 튜플의 특정 요소로 정렬
tuples = [(1, 'banana'), (2, 'apple'), (3, 'cherry')]
sorted_tuples = sorted(tuples, key=lambda x: x[1])
print(sorted_tuples)
실행 결과:
[(2, 'apple'), (1, 'banana'), (3, 'cherry')]
예제: 딕셔너리를 값으로 정렬
dictionaries = [
{'name': 'John', 'age': 45},
{'name': 'Diane', 'age': 35},
{'name': 'Mike', 'age': 25}
]
sorted_dictionaries = sorted(dictionaries, key=lambda x: x['age'])
print(sorted_dictionaries)
실행 결과:
[{'name': 'Mike', 'age': 25}, {'name': 'Diane', 'age': 35}, {'name': 'John', 'age': 45}]
결론
key 파라미터는 파이썬에서 복잡한 기준으로 객체를 정렬할 때 매우 강력한 도구입니다. 사용자 정의 함수나 람다를 **key**에 할당하여, 정렬 기준을 유연하게 지정할 수 있습니다. 이 방법을 통해 데이터를 보다 효과적으로 정리하고, 프로그램의 가독성을 높일 수 있습니다.
'프로그래밍 언어 > python' 카테고리의 다른 글
파이썬에서 딕셔너리 삽입 순서에 의존할 때 주의사항 (0) | 2024.01.22 |
---|---|
파이썬에서 언패킹을 활용한 나머지 요소 처리 (0) | 2024.01.22 |
파이썬에서 스트라이드와 슬라이스 함께 사용할 때 주의사항 (0) | 2024.01.22 |
파이썬에서 시퀀스 슬라이싱하는 방법 (0) | 2024.01.22 |
파이썬 기초: 함수와 람다식 (0) | 2024.01.17 |