Python自定义队列
- 先进先出(FIFO,First in First Out)
class Queue:
'''队列'''
def __init__(self):
self.__list = []
def enqueue(self, item):
'''往队列中添加一个item元素,进队'''
self.__list.append(item)
def dequeue(self):
'''从队列头部删除一个元素,出队'''
if self.__list:
return self.__list.pop(0)
else:
return None
def is_empty(self):
'''判断队列是否为空'''
return self.__list == []
def size(self):
'''返回队列的大小'''
return len(self.__list)
1)创建队列、判断队列是否为空、查看队列长度
q = Queue()
q.is_empty()
True
q.size()
0
2)进队
q.enqueue(1)
q.enqueue(2)
q.enqueue(3)
3)出队
print(q.dequeue())
print(q.dequeue())
print(q.dequeue())
print(q.dequeue())
1
2
3
None