这篇文章主要介绍“Python中的队列是什么”,在日常操作中,相信很多人在Python中的队列是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python中的队列是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
专注于为中小企业提供网站制作、成都做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业洪湖免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
什么是队列?
队列例子1:打印机的打印队列
队列例子2:进程调度
操作系统的内核采用了多个队列来对系统同时运行的进程进行调度
一段不运行的代码——程序
一段运行的代码——进程
进程由许多线程组成
进程的目的是实现程序的并发
CPU的内核利用队列调度进程(运行的代码),内核越多,CPU的性能越好。当进程的顺序出错导致资源分配死循环,就会出现进程死锁
进程调度特点:
进程数越多于CPU核心数(于是就要进行进程调度)
有些进程还要等待不同类型的I/O事件(I/O事件速度<
进程调度原则:
采用“先到先服务”和“资源充分利用”原则。因为CPU的内核进行进程调度采用的是队列,故对应“先到先服务”策略
队列的操作函数
Queue() | 创建队列 |
enqueue(item) | item添加到队尾 |
dequeue() | 从队首移除数据 |
isEmpty() | 是否为空 |
size() | 数据项个数 |
队列操作函数例子:
队列实现
利用python列表实现队列
class Queue():
"""队列"""
def __init__(self):
self.items = []
def enqueue(self, item):
"""插入元素, 时间复杂度O(n)"""
self.items.insert(0, item)
def dequeue(self):
"""删除元素,时间复杂度O(1)"""
return self.items.pop()
def size(self):
return len(self.items)
def isEmpty(self):
return self.items == []
到此,关于“Python中的队列是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!