안녕하세요. 스마트 팩토리입니다.
파이썬 중급 #106 collections 모듈 -deque(데크) 모듈-rotate() 에 대해 알아보겠습니다.
1. deque()- ratate(n)
-appendleft()함수
- 왼쪽으로 요소값을 추가
-ratate(n)함수
-n 값 만큼 회전해 주는 메소드
- n>0 이면 오른쪽으로 회전
-n<0 이면 왼쪽으로 회전
from collections import deque
deque_list=deque()
print(deque_list)
빈 데크를 생성합니다.
for i in range(5):
deque_list.appendleft(i)
print(deque_list)
요소를 왼쪽으로 추가해 줍니다.
deque_list.rotate(2)
print(deque_list)
rotate(n) 즉 요소값을 원형으로 주어졌다 생각하면 n 만큼 회전한다.
rotate(2) 는 0이 오고 다음 1 까지 온다.
즉 원본 값 4 3 2 1 0 - 1회전시 0, 4,3,2,1,(오른쪽 끝 값이 왼쪽 끝으로 온다. ) - 2회전시 1,0,4,3,2 (오른쪽 끝값이 왼쪽으로 온다.)
deque_list.rotate(1)
print(deque_list)
이번에는 rotate(1)은 오른쪽 요소 하나(2)가 왼쪽끝으로 온 것을 볼 수 있다.
요소를 회전한다는 개념으로 볼수 있다.
deque_list.rotate(-3)
print(deque_list)
음수인 경우는 후진한다고 보면 된다.
즉 첫번째 요소를 뒤로 보내면 된다. 첫번째 요소를 맨 뒤로 보내면 된다.
순차적으로 보내면
처음 2,1,0,4,3,
rotate(-1) 1,0,4,3 ,2
rotate(-2) 0,4,3,2,1
rotate(-3) 4,3,2,1,0 이 된다.
from collections import deque
deque_list=deque()
print(deque_list)
for i in range(5):
deque_list.appendleft(i)
print(deque_list)
deque_list.rotate(2)
print(deque_list)
deque_list.rotate(1)
print(deque_list)
deque_list.rotate(-3)
print(deque_list)
'Python' 카테고리의 다른 글
파이썬 중급 #108 collections 모듈 -deque(데크) 모듈-ㅡmaxlen(),popleft() (0) | 2022.07.28 |
---|---|
파이썬 중급 #107 collections 모듈 -deque(데크) 모듈-extend(), extendleft() (0) | 2022.07.26 |
파이썬 중급 #105 collections 모듈 -deque(데크) 모듈-clear(), appendleft() (0) | 2022.07.19 |
파이썬 중급 #104 collections 모듈 -deque(데크) 모듈-append(), pop() (0) | 2022.07.13 |
파이썬 중급 #103 자료구조 - 딕셔너리 - 키keys() 및 키 값 values() 출력 (0) | 2022.06.29 |
댓글