Language/Python

[Python] 리스트/배열 역순 정렬 ( reverse() / reversed() )

개발하는 사막여우 2020. 12. 24. 14:34
반응형

Title

 

👀 파이썬의 역순 정렬 ( reverse() / reversed() ) 👀
1. list.reverse() : list 자체를 역순으로 정렬, 함수 반환값 None 값
2. reversed(list) : 역순 정렬된 list 새로운 변수에 할당 가능

파이썬의 리스트의 정렬함수에 sort와 sorted가 있듯이, 역순 정렬에는 reverse와 reversed가 있습니다.

공통적으로 두 함수 모두 배열에 대한 역순정렬 기능을 제공해주고, 이 두 함수의 차이점은 sort와 sorted의 차이점과 비슷합니다.

 

1. reverse() → list.reverse()

  • 메모리 내의 배열 원소들을 직접 수정.
  • 반환값은 None -> 따라서 rev = list.sort() 실행 시 rev에는 None값 저장됨.
array = [1, 5, 3, 9, 7, 2]
array2 = array.reverse()

print("array가 직접 역순이 됩니다 :",array)
# > array가 직접 역순이 됩니다 : [2, 7, 9, 3, 5, 1]

print("array2에는 역순된 array가 들어가지 않습니다 :",array2)
# > array2에는 역순된 array가 들어가지 않습니다 : None

 

2. reversed()  reversed(list)

  • 반환값이 배열값: 변수에 저장 가능! 원래 변수는 수정되지 않음.
array = [1, 5, 3, 9, 7, 2]
array2 = sorted(array)

print("array는 역순이 되지 않습니다 :",array)
# > array는 역순이 되지 않습니다 : [1, 5, 3, 9, 7, 2]

print("array2에는 역순된 array가 들어갑니다 :",array2)
# > array2에는 역순된 array가 들어갑니다 : [2, 7, 9, 3, 5, 1]

 


✔ sort(reverse = True), sorted(reverse = True) / reverse(), reversed() 차이

reverse = true 옵션을 사용한 sort 와 sorted는 오름차순 정렬 후 역순, 즉 "내림차순" 으로 정렬되는 것이고,

reverse() 와 reversed() 는 정렬 과정 없이 순수 배열을 반대로 뒤집는 것입니다.

헷갈리지 않고 사용하실 수 있기를 바랍니다😊

 

 

 

<참고>

docs.python.org/ko/3/howto/sorting.htmldocs.python.org/ko/3/library/array.html?highlight=reverse#array.array.reverse

docs.python.org/ko/3/library/stdtypes.html#list.sortdocs.python.org/ko/3/library/functions.html?highlight=reversed#reversed

docs.python.org/ko/3/library/timeit.html

 

반응형