[Python] sort(), sorted() 차이

김가람휘·2022년 2월 24일
0

Python

목록 보기
11/14

sort() vs sorted()

  • sort함수는 리스트명.sort()형식으로 리스트형의 메소드이며 리스트 원본값을 직접 수정합니다.
    -> 내림차순 : a.sort(reverse=True)

  • sorted함수는 sorted(리스트명)형식으로 내장 함수이며 리스트 원본 값은 그대로이고 정렬 값을 반환합니다.
    -> 내림차순 : a = sorted(a, reverse=True)

# sort()
a1 = [6, 3, 9]
print('a1:', a1)
a2 = a1.sort() # 원본을 정렬하고 수정합니다(in-place)
print('-----정렬 후-----')
print('a1:', a1)
print('a2:', a2)

# a1: [6, 3, 9]
# -----정렬 후-----
# a1: [3, 6, 9]
# a2: None
# sorted()
b1 = [6, 3, 9]
print('b1:', b1)
b2 = sorted(b1) # 원본은 유지하고 정렬한 새 리스트를 만듭니다
print('-----정렬 후-----')
print('b1:', b1)
print('b2:', b2)

# b1: [6, 3, 9]
# -----정렬 후-----
# b1: [6, 3, 9]
# b2: [3, 6, 9]
  • CodeKata -9를 풀면서 생긴 의문점 정리
return result.sort() # None

result = result.sort() # None을 반환하므로 result에 None이 저장됨
return result # None

result.sort() # 원본 result 정렬
return result # 정렬된 result 리턴

return sorted(result) # 정렬된 result 리턴

0개의 댓글