Python deque

La file d’attente Python est une bibliothèque intégrée qui vous permet de créer une liste qui utilise la règle FIFO, premier entré, premier sorti. Deque Python utilise la règle opposée, la file d’attente LIFO ou le dernier entré, premier sorti. Les deux fonctionnent sur des piles et des files d’attente.

Lorsque vous travaillez en Python, vous souhaiterez peut-être créer une file d’attente d’éléments au lieu d’un liste. Par exemple, supposons que vous écriviez un programme qui suit les inscriptions à une conférence. Lorsque nous ajoutons quelqu’un à la liste, vous voulez le placer à l’arrière de la file d’attente, puis vous voulez qu’il avance dans la file d’attente au fur et à mesure que les gens au premier rang commencent à entrer.

Il y a un bibliothèque intégrée en Python conçue pour vous aider avec ces types de problèmes : files d’attente. Les files d’attente sont similaires aux piles en Python, la principale différence étant qu’avec une file d’attente, vous supprimez l’élément le moins récemment ajouté. Dans une pile, en revanche, vous supprimez l’élément le plus récemment ajouté.

Dans ce tutoriel, nous allons détailler les bases des files d’attente en Python et comment en implémenter une.

Queue Primer

Utiles lorsque vous travaillez avec une liste Python, les files d’attente sont utiles lorsque vous souhaitez obtenir les choses d’une liste dans l’ordre dans lequel vous les avez mises. Pour reprendre notre exemple précédent, lorsque vous êtes à une conférence, vous devez être placé en queue de peloton lors de votre première inscription. Mais au fur et à mesure que les personnes sur la liste commencent à entrer, vous devez monter plus haut dans la liste.

Les files d’attente sont différentes des tableaux et des listes en ce sens que les files d’attente ne sont pas à accès aléatoire‚Äîles données stockées dans une file d’attente ont un ordre particulier . Ainsi, si vous souhaitez ajouter un élément à une file d’attente, il sera ajouté à la fin. Cela s’appelle premier entré, premier sorti ou une file d’attente FIFO pour faire court.

En Python, vous pouvez utiliser une liste standard comme file d’attente. Cependant, les listes peuvent être assez lentes si vous insérez et supprimez des éléments car la modification des éléments au début de la liste nécessite de déplacer tous les d’autres éléments de la liste vers le bas. Par conséquent, si vous devez implémenter une liste premier entré, dernier sorti, vous devez utiliser une file d’attente.

Python Queue

Alors, comment implémenter une file d’attente en Python ? Dans l’ordre pour ce faire, nous devons ma Utilisez la bibliothèque de files d’attente intégrée. Le module file d’attente comprend un certain nombre de classes utiles pour les files d’attente, mais pour ce didacticiel, nous allons nous concentrer sur la classe queue.Queue.

81% des participants ont déclaré qu’ils se sentaient plus confiants quant à leurs perspectives d’emploi en technologie après avoir assisté à un bootcamp. Soyez jumelé à un bootcamp aujourd’hui.

Le diplômé moyen d’un bootcamp a passé moins de six mois en transition de carrière, du démarrage d’un bootcamp à la recherche de son premier emploi.

Disons que nous construisent un programme qui suit les personnes qui veulent aller voir le dernier film au cinéma local. Nous pourrions utiliser une file d’attente pour garder une trace de la liste d’attente des personnes qui souhaitent regarder le film.

Tout d’abord, nous devons définir notre classe de file d’attente. Nous pouvons le faire en utilisant le code suivant :

Nous sommes maintenant prêts à créer notre file d’attente. La fonction put() permet de mettre des données dans la file d’attente. Dans le code ci-dessous, nous allons ajouter à la liste d’attente cinq personnes qui viennent de s’inscrire pour voir le film :

Maintenant, nous avons ajouté à la file d’attente nos cinq noms. Erin est la première dans notre file d’attente, puis Samantha, et ainsi de suite jusqu’à ce que nous atteignions Helena, qui est la dernière. Nous pouvons le démontrer en utilisant la fonction get(), comme ceci :

Notre code renvoie les éléments suivants :

Comme vous pouvez le voir, Erin est la première de notre file d’attente. Si nous voulions imprimer les deux premiers noms qui sont dans la file d’attente, nous utiliserions la fonction get() deux fois :

Notre code renvoie les éléments suivants :

Mais que se passe-t-il si nous voulons ajouter et supprimer un certain nombre d’éléments à chaque extrémité de notre file d’attente ? C’est là qu’intervient la fonction deque. En utilisant deque, nous pouvons créer une file d’attente à deux extrémités o√π nous pouvons ajouter et supprimer des éléments du début ou de la fin de la file d’attente. Les demandes sont dernier entré, premier sorti, ou LIFO pour faire court.

Utilisons le même exemple que ci-dessus : stocker les noms en liste d’attente pour un film. Premièrement, nous allons déclarer notre fonction deque :

Maintenant que nous avons initialisé notre deque, nous pouvons ajouter notre liste de noms en liste d’attente à notre deque :

Comme vous pouvez le voir, nous avons utilisé le append() pour mettre un élément dans notre file d’attente. Pour voir les valeurs stockées dans notre liste d’attente, nous pouvons utiliser le code suivant :

Notre code renvoie le e suivant :

Comme vous pouvez le voir, nos données ont été stockées dans l’ordre o√π nous les avons insérées dans notre deque. Mais que se passe-t-il si nous voulons supprimer le premier élément de notre file d’attente ? Nous pouvons utiliser la fonction popleft() pour atteindre cet objectif. Voici un exemple :

Notre code a supprimé le premier élément de notre liste ‚Äî Erin ‚Äî et renvoie ce qui suit :

Si nous voulons supprimer tous les éléments de notre deque, nous pouvons utiliser la fonction clear() :

Le résultat de notre code est le suivant :

Comme vous pouvez le voir, notre deque est vide, mais l’objet existe toujours.

Conclusion

C’est tout ! Dans cet article, nous avons expliqué comment les files d’attente sont un type de structure de données qui vous permet d’adopter une approche de stockage premier entré, premier sorti pour stocker les données. Un exemple d’utilisation d’une file d’attente serait de garder une liste d’attente pour un nouveau produit.

"Career Karma est entré dans ma vie quand j’en avais le plus besoin et m’a rapidement aidé à participer à un bootcamp. Deux mois après avoir obtenu mon diplôme, j’ai trouvé l’emploi de mes rêves qui correspond à mes valeurs et à mes objectifs dans la vie !"

Venus, ingénieur logiciel chez Rockbot

Nous avons également discuté de la façon dont vous pouvez utiliser deque pour créer une file d’attente à deux extrémités o√π vous pouvez ajouter et supprimer des éléments de votre file d’attente. Vous êtes maintenant prêt à commencer à rédiger vos propres requêtes et demandes !

Python est utilisé dans divers environnements de programmation professionnels. Téléchargez le application gratuite Career Karma aujourd’hui pour découvrir comment Python peut vous aider à percer dans la carrière de vos rêves dans la technologie !