반응형
파이썬 내장함수(Built-in Function)인 sorted() 함수에 대해 설명합니다.
sorted(iterable, /, *, key=None, reverse=False) |
iterable(반복 가능한 데이터)의 항목을 정렬해서 리스트(list)로 반환합니다.
sorted() 함수는 정렬된 결과를 반환하지만 원본인 iterable은 변경되지 않습니다.
a=[3,4,5,2,1]
b = sorted(a) #a는 변경되지 않고, 정렬된 결과가 b에 저장됩니다.
print(a)
print(b)
(Output)
[3, 4, 5, 2, 1]
[1, 2, 3, 4, 5]
인수 reverse=True로 지정하면 역순으로 정렬(descending sort)됩니다.
a=[3,4,5,2,1]
b = sorted(a, reverse=True) # 역순으로 정렬됩니다.
print(b)
(Output)
[5, 4, 3, 2, 1]
리스트에도 sort() 메서드가 있지만, 이 메서드는 원본이 정렬됩니다.
a=[3,4,5,2,1]
a.sort() # a가 정렬됩니다. 즉, 원본 데이터인 a가 변경됩니다.
print(a)
(Output)
[1, 2, 3, 4, 5]
인수 key는 iterable의 각 요소에서 비교 키를 추출하는데 사용되는 하나의 인수로 구성된 함수를 지정합니다(예: key=str.lower). key의 기본값은 None입니다.
a='Python'
# 소문자로 변경해서 정렬하기 때문에,
# 대소문자 구분없이 정렬하는 것과 동일합니다.
b = sorted(a, key=str.lower)
print(b)
(Output)
['h', 'n', 'o', 'P', 't', 'y']
위 예제에서 인수 key를 사용하지 않고 정렬하면 다음과 같은 결과가 나오는 것을 알 수 있습니다.
대문자를 소문자보다 먼저 출력되는 것을 볼 수 있습니다.
a='Python'
b = sorted(a)
print(b)
(Output)
['P', 'h', 'n', 'o', 't', 'y']
반응형
'Python' 카테고리의 다른 글
(파이썬) 내장함수 zip() (0) | 2024.01.05 |
---|---|
(파이썬) 내장함수 tuple() 튜플 (0) | 2024.01.05 |
(파이썬) 내장함수 slice() 슬라이스 (0) | 2024.01.04 |
(파이썬) pip install, 모듈 설치하는 방법 (0) | 2024.01.04 |
(파이썬) 내장함수 round() 반올림 (0) | 2024.01.03 |