728x90
리스트 사용해서 작업을 하다가 큐가 필요해져서 만들게 되었음.
리스트를 사용해서 만들었고, 리스트의 연산기능을 사용했음
1행 : 큐로 사용할 리스트 이름
3행 : 데이터를 큐에 넣는 기능
9행: 큐에서 데이터를 하나 빼내오는 기능
하지만,,, q_pop() 에 부족한 부분이 있으니, q_list멤버가 없다면 12행은 에러가 발생한다(아래 그림참고)
16,17행 : 데이터를 넣고
20행 : 마지막 데이터까지 꺼내지고, 큐는 빈상태가 된다
21행: 비어있는 큐에서 데이터 꺼내기 시도 <- 에러
728x90
이를 보완하기 위해서 len()사용해서 큐의 데이터 갯수를 확인한다
11행 : 큐의 데이터 갯수 확인
12행 : 데이터를 꺼내기 시도
13행 : 성공한다면 큐에서 데이터를 하나 삭제하고
15행 : 큐의 데이터가 없다면 비어 있는 값으로 리턴 준비
수행결과, 아래와 같다.
24행 : 큐가 빈 상태에서 데이터 꺼내기 시도
에러가 나지 않고 에러메세지를 돌려받는다
환형큐같은 것에 사용되는 head, tail등을 고려하지 않고 파이썬의 리스트로 간단히 구현가능함 확인
.
역시나,,, 훌륭하신 분들이 준비해둔 queue라는 모듈이 있었다
FIFO , LIFO 모두 지원한다. 아래 링크 참고.
https://docs.python.org/ko/3/library/queue.html
728x90
'프로그래밍' 카테고리의 다른 글
python, exe 만들었는데 알약에 잡히다! (feat. pyinstaller) (0) | 2024.12.29 |
---|---|
python, 데이터프레임 - 데이터프레임 합치기(concat, reset_index()는 거들뿐) (0) | 2023.06.24 |
python, 데이터프레임 - 헤더, 인덱스 제거하고 파일 저장 (0) | 2023.06.22 |
python, csv - 한글깨짐 (0) | 2023.06.22 |
python, 데이터프레임() - 리스트로 데이터프레임 생성(행/열) (0) | 2023.06.22 |