프로그래밍/파이썬 기초
[Python] 큐(Que) 사용하기 - deque
상어군
2022. 9. 16. 09:07
반응형
1. 라이브러리 Import
que는 collections에서 제공하는 deque를 통해 사용할 수 있다.
from collections import deque
2. 코드 예시
# 큐 생성
que = deque([])
print(que) #==> deque([])
# 값 추가
que.append(1)
print(que) #==> deque([1])
que.append(3)
print(que) #==> deque([1, 3])
que.append(3)
print(que) #==> deque([1, 3, 3])
# 좌측에 값 추가
que.appendleft(9)
print(que) #==> deque([9, 1, 3, 3])
# 특정 값의 개수 반환
print(que.count(1)) #==> 1
# 큐 복사
que2 = que.copy()
print(que2) #==> deque([9, 1, 3, 3])
# 큐 초기화
que2.clear()
print(que2) #==> deque([])
# 큐 이어붙이기
que2 = deque([5,6])
que.extend(que2)
print(que) #==> deque([9, 1, 3, 3, 5, 6])
# 큐 좌측에 이어붙이기
que2 = deque([7,7,7])
que.extendleft(que2)
print(que) #==> deque([7, 7, 7, 9, 1, 3, 3, 5, 6])
# 큐 특정 위치에 값 삽입 (위치,값)
que.insert(3,100)
print(que) #==> deque([7, 7, 7, 100, 9, 1, 3, 3, 5, 6])
# 특정 값의 인덱스 반환
print(que.index(100)) #==> 3
# pop은 큐의 맨 뒤(우측) 값을 반환하고 큐에서 삭제
print('poped item : ',que.pop()) #==> poped item : 6
print(que) #==> deque([7, 7, 7, 100, 9, 1, 3, 3, 5])
# pop은 큐의 맨 앞(좌측) 값을 반환하고 큐에서 삭제
print('left poped item : ',que.popleft()) #==> left poped item : 7
print(que) #==> deque([7, 7, 100, 9, 1, 3, 3, 5])
# 지정된 값을 큐에서 삭제
que.remove(7)
print(que) #==> deque([7, 100, 9, 1, 3, 3, 5])
# 큐 내용 반전
que.reverse()
print(que) #==> deque([5, 3, 3, 1, 9, 100, 7])
# 맨 뒤의 값을 pop한 후 앞에 삽입
que.rotate()
print(que) #==> deque([7, 5, 3, 3, 1, 9, 100])
# 큐의 최대 길이 설정, 최대길이를 넘을시 앞의 값 삭제
que = deque([1,2,3],maxlen=3)
que.append(9)
print(que) #==> deque([2, 3, 9], maxlen=3)반응형