기본 패턴
python
items = ["pear", "apple", "banana"]
print(sorted(items))
print(sorted(items, key=len))설명
sorted()는 새 정렬 결과를 만들고,list.sort()는 원본 리스트 자체를 바꿉니다.- 기본 정렬은 오름차순이며,
reverse=True로 내림차순 정렬이 가능합니다. key함수는 각 원소에서 비교 기준값을 뽑아내는 역할을 합니다.- 복잡한 데이터를 정렬할 때는 원소 자체보다 "무엇을 기준으로 볼지"를 분리하는 것이 중요합니다.
짧은 예제
python
students = [
{"name": "Mina", "score": 90},
{"name": "Jin", "score": 75},
{"name": "Ara", "score": 88},
]
ranked = sorted(students, key=lambda item: item["score"], reverse=True)빠른 정리
| 표현 | 특징 |
|---|---|
sorted(seq) | 새 정렬 결과 반환 |
seq.sort() | 원본 리스트 변경 |
key=len | 길이를 기준으로 정렬 |
reverse=True | 내림차순 정렬 |
공식 참고: Data Structures
주의할 점
정렬 기준이 없으면 Python이 객체를 직접 비교하려다 오류를 낼 수 있습니다. 딕셔너리,
사용자 정의 객체처럼 비교 규칙이 분명하지 않은 경우 key를 명시하는 편이 안전합니다.