Cet article présente principalement la définition et l'utilisation des files d'attente en Python, et analyse les techniques de fonctionnement spécifiques et les précautions pour définir et utiliser les files d'attente en Python sur la base d'exemples spécifiques. peut se référer à
Cet article explique la définition et l'utilisation des files d'attente Python avec des exemples. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Bien que Python ait son propre module de file d'attente, nous n'avons besoin que de présenter ce module lors de son utilisation, mais afin de mieux comprendre la file d'attente, nous avons implémenté la file d'attente nous-mêmes.
La file d'attente est une structure de données caractérisée par le principe premier entré, premier sorti, ce qui signifie qu'un élément est ajouté à la fin de la file d'attente et qu'un élément est supprimé de la tête de la file d'attente. C'est comme faire la queue pour payer dans un centre commercial. La personne qui arrive en premier prend la facture en premier, et ceux qui sont arrivés plus tard étaient au bout de la file d'attente. Dans notre vie quotidienne, les files d'attente sont utilisées lors de l'envoi de messages texte. Voici le code pour implémenter la file d'attente en Python :
#!/usr/bin/python #coding=utf-8 class Queue(object) : def init(self, size) : self.size = size self.queue = [] def str(self) : return str(self.queue) #获取队列的当前长度 def getSize(self) : return len(self.quene) #入队,如果队列满了返回-1或抛出异常,否则将元素插入队列尾 def enqueue(self, items) : if self.isfull() : return -1 #raise Exception("Queue is full") self.queue.append(items) #出队,如果队列空了返回-1或抛出异常,否则返回队列头元素并将其从队列中移除 def dequeue(self) : if self.isempty() : return -1 #raise Exception("Queue is empty") firstElement = self.queue[0] self.queue.remove(firstElement) return firstElement #判断队列满 def isfull(self) : if len(self.queue) == self.size : return True return False #判断队列空 def isempty(self) : if len(self.queue) == 0 : return True return False
Ce qui suit est le code de test pour le fichier .py de la classe de file d'attente :
if name == 'main' : queueTest = Queue(10) for i in range(10) : queueTest.enqueue(i) print queueTest.isfull() print queueTest print queueTest.getSize() for i in range(5) : print queueTest.dequeue() print queueTest.isempty() print queueTest print queueTest.getSize()
Résultats des tests :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!