728x90
Queue 란?
-
큐(queue)는 컴퓨터의 기본적인 자료 구조의 한가지로, 먼저 집어 넣은 데이터가 먼저 나오는 FIFO (First In First Out)구조로 저장하는 형식을 말한다.
기본 사용법
큐를 생성하여 put/get 으로 입출력을 할 수 있습니다.
import queue
data = [1, 2, 'a', 'b', [1,2,3], {'a':1, 'b':2}]
q = queue.Queue()
for d in data:
q.put(d)
print('queue size:', q.qsize())
for i in range(q.qsize()):
print(f'data: {q.get()}, queue size: {q.qsize()}')
print('queue size:', q.qsize())
queue size: 6
data: 1, queue size: 5
data: 2, queue size: 4
data: a, queue size: 3
data: b, queue size: 2
data: [1, 2, 3], queue size: 1
data: {'a': 1, 'b': 2}, queue size: 0
queue size: 0
큐는 크기를 지정할 수 있습니다.
empty 는 큐가 비어있으면 True 를 반환하며, full 은 큐가 가득차면 True 를 반환합니다.
q = queue.Queue(2)
print(f'qsize: {q.qsize()}')
print(f'empty: {q.empty()} / full: {q.full()}')
q.put(1)
print(f'put data, qsize: {q.qsize()}')
print(f'empty: {q.empty()} / full: {q.full()}')
q.put(2)
print(f'put data, qsize: {q.qsize()}')
print(f'empty: {q.empty()} / full: {q.full()}')
queue size: 0
qsize: 0
empty: True / full: False
put data, qsize: 1
empty: False / full: False
put data, qsize: 2
empty: False / full: True
'Language > Python' 카테고리의 다른 글
파이썬 wav 음악파일 재생하기 : pyaudio (0) | 2020.08.04 |
---|---|
파이썬 sqlite3 사용하기 -3 : 컬럼에 자동 타임스탬프 찍기 (0) | 2020.07.21 |
파이썬 sqlite3 사용하기 -2 : 테이블 생성 예외처리 (0) | 2020.07.20 |
파이썬 sqlite3 사용하기 -1 : 데이터타입, 기본 사용법 (0) | 2020.07.20 |
파이썬 psutil 모듈 사용하기 -3 : 네트워크 정보 구하기 (0) | 2020.07.16 |