think deeply

[python] 문자열 거꾸로 출력하는 방법 (feat. reverse, reversed) 본문

rainbow/etc.

[python] 문자열 거꾸로 출력하는 방법 (feat. reverse, reversed)

윌_ 2023. 1. 7. 13:37

파이썬 역순 정렬 함수3.  : reverse, reversed

1. reverse() ::  list.reverse()

  • 배열의 항목 순서를 뒤집는다
  • 메모리 내의 배열 원소들을 직접 수정
  • 반환값은 None
a = 'string'
a_list = list(a)  # 문자열을 list로 치환 :: reverse는 list에만 사용 가능하기 때문
a_list.reverse()  # reverse 함수를 사용해 문자열 리스트를 거꾸로 뒤집음

print(''.join(a_list))  # 거꾸로 뒤집어진 리스트를 연결해서 출력

#출력: gnirts

2. reversed() ::  reversed(list)

  • reversed는 문자열에도 바로 적용이 가능함 (cf. reverse는 list만 사용 가능)
  • 반환값이 배열값: 변수에 저장 가능 (원래 변수는 수정되지 않음)
a = 'string'
print(''.join(reversed(a))) 

#출력: ginrts

3. [ :: -1 ]

  • 문자열을 인덱스로 호출도 가능
  • 이 방법은 리스트, 튜플, 문자열 모두에 활용 가능
a = 'string'
print(a[::-1])

#출력: gnirts

 

인덱스 개념
  • a[4:0:-1] : 4번 인텍스부터 1번 인덱스까지 역순의 데이터를 불러온다
a = 'string'
print(a[4:0:-1])

#출력: nirt

  • a[4::-1] : 4번 인덱스부터 0번 인덱스까지 역순의 데이터를 불러온다
  • a[::-1] : 마지막 인덱스는 생략해줄 수 있다

sort(reverse=TRUE), sorted(reverse =TRUE)       /         reverse(), reversed() 차이
  • sort(reverse = TRUE), sorted(recerse = TRUE)는 (오름차순 정렬 후 역순을 진행이기에) 내림차순으로 정렬
  • reverse()와 reversed()는 정렬 과정없이 순수 배열을 뒤집음

 


<참고>

https://docs.python.org/ko/3/library/stdtypes.html#list.sort

https://itholic.github.io/python-reverse-string/

Comments