TIL - sort, reverse vs sorted, reversed

Seob·2020년 7월 8일
0

TIL

목록 보기
6/36

sorted() 함수에 대해서 정리를 했었는데 문득, reversed() 함수에 대해서도 궁금해지기 시작했고, reverse()와의 차이점도 알고 싶었고, sortsorted도 연관이 있는건가? 하면서 갑자기 정리하고 싶어졌다.

List Methods


w3schools.com

Built-in Functions


Python documentation

sort() vs sorted()

위의 표에서 보면 알 수 있듯이 sort()는 리스트의 메소드중 하나이고, sorted()는 내장 함수이다.

  • sort()리스트 자체를 정렬시킨다.
lst = [ i for i in [5,4,3,2,1]]
lst.sort()
print(lst)

------------------------------

[1, 2, 3, 4, 5]
  • sorted()원본은 변경하지 않으며, 리스트를 반환하지 않고 오름차순으로 iterator를 반환한다.
lst = [ i for i in [5,4,3,2,1]]
print(list(sorted(lst))) # sorted
print(lst) # original
------------------------------
[1, 2, 3, 4, 5]
[5, 4, 3, 2, 1]

reserve() vs reversed()

reserve() - a method of list

  • reverse()리스트 자체를 내림차순으로 정렬시킨다.
lst = [ i for i in range(5)]
lst.reverse()
print(lst)

------------------------------

[4, 3, 2, 1, 0]

reversed() - a built-in function

  • reversed()원본은 변경하지 않으며, 리스트를 반환하지 않고 내림차순으로 iterator를 반환한다.
lst = [ i for i in range(5)]
print(list(reversed(lst))) # reversed
print(lst) # original
--------------------------------------------
[4, 3, 2, 1, 0]
[0, 1, 2, 3, 4] 


from Stack Overflow

[::-1]

완전히 같지는 않지만 슬라이싱을 해서 순서를 뒤집을 수도 있다.

lst = [i for i in range(5)]
print(list(reversed(lst)))  # reversed
print(lst[::-1])  # [::-1]
print(lst)  # original
-------------------------------------------
[4, 3, 2, 1, 0]
[4, 3, 2, 1, 0]
[0, 1, 2, 3, 4]

예시참조

profile
Hello, world!

0개의 댓글