[Python]队列基础

简介: [Python]队列基础

关于队列

基本的队列是一种先进先出的数据结构。

一般的队列基本操作如下:

  • create:创建空队列
  • add:将新数据加入队列的末尾。返回新队列。
  • delete:删除队列头部的数据,返回新队列。
  • fromt:返回队列头部的值
  • empty:若队列为空,则返回一个空队列。

使用列表简单实现一个队列

class lqueue(self):
    def __init__(self):
        self.list = []
    
    # 入队
    def inq(self.item):
        self.list.append(item)
    # 出队
    def outq(self):
        self.list.pop(0)
    # 判断是否为空
    def is_empty(self):
        return self.list == []
    # 队列长度
    def qlength(self):
        return len(self.list)

标准队列

python的queue模块提供了一个先进先出的队列类型Queue。Queue主要有以下几种方法:

  • put():在队列尾部添加元素
  • get():从队列头部取出元素,返回队列头部元素
  • empty():判断队列是否为空
  • full():判断队列是否达到最大长度限制
  • qsize():队列当前长度
from queue import Queue
# maxsize=0表示不限制队列长度
q = Queue(maxsize=0)
q.put(1)
q.put(2)
print(q.queue) # deque([1, 2])
q.get() # 1
print(q.queue) # deque([2])
print(q.qsize()) # 1
print(q.empty()) # false
print(q.full()) # false
相关文章
|
安全 开发者 Python
python队列(Queue)
python队列(Queue)
585 1
|
Python
Python实现数据结构(如:链表、栈、队列等)。
Python实现数据结构(如:链表、栈、队列等)。
446 0
|
存储 缓存 算法
Python中collections模块的deque双端队列:深入解析与应用
在Python的`collections`模块中,`deque`(双端队列)是一个线程安全、快速添加和删除元素的双端队列数据类型。它支持从队列的两端添加和弹出元素,提供了比列表更高的效率,特别是在处理大型数据集时。本文将详细解析`deque`的原理、使用方法以及它在各种场景中的应用。
1506 4
|
前端开发 Python
Python中如何用栈实现队列
Python中如何用栈实现队列
452 0
|
安全
python_threading多线程、queue安全队列
python_threading多线程、queue安全队列
340 2
|
Python
【Leetcode刷题Python】剑指 Offer 09. 用两个栈实现队列
使用两个栈实现队列的Python解决方案,包括初始化两个栈、实现在队列尾部添加整数的appendTail方法和在队列头部删除整数的deleteHead方法,以及相应的示例操作。
177 2
|
安全 Python
对于Python队列(Queue)的深入阐述
对于Python队列(Queue)的深入阐述
|
数据采集 Java Python
python 递归锁、信号量、事件、线程队列、进程池和线程池、回调函数、定时器
python 递归锁、信号量、事件、线程队列、进程池和线程池、回调函数、定时器
|
消息中间件 存储 NoSQL
一文读懂python分布式任务队列-celery
# 一文读懂Python分布式任务队列-Celery Celery是一个分布式任务执行框架,支持大量并发任务。它采用生产者-消费者模型,由Broker、Worker和Backend组成。生产者提交任务到队列,Worker异步执行,结果存储在Backend。适用于异步任务、大规模实时任务和定时任务。5月更文挑战第17天
2562 1
|
前端开发 Python
数据结构Python用队列实现杨辉三角形
数据结构Python用队列实现杨辉三角形
357 0

推荐镜像

更多