[Python] reverse, reversed 사용법과 차이 알아보기
본문 바로가기
Python/매서드 Method, 내장 함수 등 정리

[Python] reverse, reversed 사용법과 차이 알아보기

by 쏠수있어ㅤ 2021. 6. 4.
반응형

 

   Python   

.reverse 

.reversed 

 

 

 

 

  매서드 풀이  

파이썬에서 reverse , reversed 모두 리스트의 요소를 뒤집을 때 사용한다. 

 

 

 

 

[리스트].reverse()

reverse는 list, 리스트타입에서 제공하는 함수이다. 

* 주의사항은 : 값을 반환하지 않는다는 점이다. -> 변수에 값을 담기가 불가능하다. 

B = A.reverse()   -> #None 

print(A.reverse()) -> #None 

위의 코드들은 A라는 리스트를 모두 reverse 를 해준다. 하지만 B라는 변수에 담거나 print 를 바로 할 수가 없다. 

저 코드 이후에 print(A) 를 해보면 reversed 가 된 값들이 나온다.  

 

 

기본 코드 

a = [1,2,3,4]

a.reverse()

 

 

   예제  ↓↓↓  

a = [1,2,4,3,5]  #리스트
b = (1,2,4,3,5)  #튜플 
c = '123'        #스트링
d = {'a':1, 'b':2, 'c':3}  #딕셔너리

print(a.reverse())  #None
#print(b.reverse()) # Error
#print(c.reverse()) # Error
#print(d.reverse()) # Error

#이미 변환되어 있다. 
print(a)  # [5,3,4,2,1]

# 다시 바꿔주기 
a.reverse() 
print(a) # [1,2,4,3,5]

# reverse()한 것을 변수에 넣기 
R = a.reverse()
print(R)  # None 
#-> reverse는 값을 반환하는게 아니다.
print(a)  # [5,3,4,2,1]

 

 

 

 

 

reversed([리스트])

reversed 는 파이썬의 내장 함수이다. 리스트뿐만 아니라 튜플, 스트링, 딕셔너리에도 사용이 가능하다. 

값을 반환하며 객체의 값으로 반환한다. 반환된 값은 다시 다른 매서드를 통해 표현될 수 있다. 

 

 

 

기본코드 

a = [1,2,3,4]

reversed(a)

 

 

   예제  ↓↓↓ 

a = [1,2,3]
b = (1,2,3)
c = '123'
d = {'a':1, 'b':2, 'c':3}

print(reversed(a)) # 객체로 반환
print(reversed(b))
print(reversed(c))
print(reversed(d))

print(a)  #원형은 안바뀐다.

print(list(reversed(a))) # [3,2,1]
print(tuple(reversed(b))) #(3,2,1)
# print(str(reversed(c))) #오류
# print(dict(reversed(d))) #오류

print(''.join(reversed(c))) # '321'
print(type (''.join(reversed(c)))) 

 

 

 

 


 

 

결론 :   .reverse() 와 reversed() 의 차이 

 

1. 리스트 함수 vs 내장 함수인 점  / 사용 객체의 범위 

.reverse ()  는 List, 리스트 함수  - 리스트에만 쓸 수 있다. 

reversed() 는 파이썬 내장 함수 - 리스트, 튜플, 스트링, 딕셔너리 사용 가능하다. 

 

2. 값 반환 여부의 차이 

.reverse() 는 값을 반환하지 않는다. 

revered() 는 객체 값을 반환한다. 

 

3. 해당 객체 원형 변형여부 

.reverse() -> 해당 리스트의 원형을 바꿔놓는다. 

reversed() -> 해당 객체의 원형을 바꾸지 않는다. 

 

 

 

반응형

댓글