pile Python

Les piles sont une structure de données importante avec un large éventail d’utilisations.

En programmation, les piles vous permettent de stocker les données dans l’ordre LIFO (dernier entré, premier sorti). Cela signifie que le dernier élément stocké dans une pile est le premier qui sera traité.

Mais comment créer une pile en Python ? C’est la question à laquelle nous allons répondre dans ce guide. √Ä la fin de la lecture de ce guide, vous serez un expert dans la création et l’utilisation de piles en Python.

Pilons Python

Les piles stockent les données dans un dernier , ordre du premier sorti (LIFO).

Pour vous aider à comprendre le fonctionnement de cet ordre, considérons une pile d’assiettes. Lorsque vous avez une pile d’assiettes à nettoyer, la première assiette que vous déplacerez est celle du dessus. Ensuite, au fur et à mesure que vous déplacez les plaques, vous pourrez accéder à celles plus bas dans la pile.

Les piles sont à l’opposé des files d’attente en Python. Les files d’attente suppriment l’élément le moins récemment ajouté (car elles utilisent la structure premier entré, premier sorti), tandis que les piles suppriment l’élément le plus récemment ajouté (car elles utilisent la structure dernier entré, premier sorti).

Les piles prennent généralement en charge deux opérations : push et pop. Pousser vous permet d’ajouter un élément en haut d’une pile, et popper vous permet de supprimer l’élément en haut de la pile.

En Python, il existe deux approches principales que vous pouvez utiliser pour créer une pile : en utilisant des listes intégrées, et en utilisant la classe collections.deque(). Examinons le fonctionnement de chacune de ces approches.

81 % des participants ont déclaré qu’ils se sentaient plus confiants quant à leurs perspectives d’emploi dans le secteur technologique 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.

Les données de la liste intégrée type vous permet de créer une pile en Python.

Parce que les listes Python sont implémentées sous forme de tableaux, vous pouvez facilement y ajouter et supprimer des éléments. De plus, l’ordre dans lequel vous insérez les valeurs dans une liste sera préservé, ce qui signifie que vous pouvez facilement supprimer le premier et le dernier élément d’une liste.

Supposons que nous voulions créer une pile qui stocke une liste de devoirs dans une classe. L’enseignant souhaite noter ces devoirs dans l’ordre dans lequel ils apparaissent la pile (ainsi, le devoir remis en premier sera au bas de la pile, et le devoir remis en dernier sera en haut de la pile).

Ajouter des éléments à la pile

Pour ajouter des éléments à une pile, nous pouvons utiliser la méthode append(). Nous pourrions créer notre pile de devoirs en utilisant le code suivant :

Notre code renvoie :

Dans notre code, nous déclarons d’abord une liste appelée affectations. Ensuite, nous utilisons la méthode append() pour ajouter trois noms à notre liste de devoirs qui ont été remis. Les noms que nous ajoutons sont, dans l’ordre : Hannah, Benny, Gordon. √âtant donné que Gordon a remis son devoir en dernier, il apparaaît en dernière position dans notre liste.

Supprimer des éléments de la pile

Supposons que nous ayons noté le devoir de Gordon, et nous voulons savoir lequel est à côté de la classe. Cela implique de supprimer l’élément en haut de notre pile.

Pour supprimer un élément de notre pile, nous pouvons utiliser la méthode pop(). Voici le code que nous pourrions utiliser pour supprimer le premier élément de notre pile :

Notre code renvoie :

Le nom de Gordon a été supprimé de la pile à l’aide de pop(), et notre pile ne contient donc plus que deux noms : Hannah et Benny.

collections.deque Class

La classe deque dans la bibliothèque collections vous permet de créer une file d’attente à deux extrémités.

L’objet deque est implémenté sous la forme d’une liste à double liaison, ce qui signifie qu’il a des performances solides et cohérentes lors de l’insertion et de la suppression d’éléments. De plus, comme la bibliothèque de collections fait partie de la bibliothèque standard Python, vous pouvez l’importer dans votre code sans avoir à télécharger une bibliothèque externe.

Pour travailler avec la classe collections.deque, nous devons d’abord l’importer dans notre code à l’aide d’une instruction import :

Revenons à notre exemple de devoir de plus tôt pour illustrer comment le La classe collections.deque fonctionne.

Ajouter des éléments à une pile Deque

√Ä ajouter des éléments à une pile deque, nous pouvons utiliser la méthode append(). Supposons que nous voulions créer une file d’attente avec nos devoirs en utilisant la classe deque. Nous pourrions le faire en utilisant ce code :

Notre code renvoie :

Décomposons notre code . Tout d’abord, nous importons la classe deque de la bibliothèque de collections. Ensuite, nous créons un deque en utilisant deque() et l’assignons à la variable assignments.

Ensuite, nous ajoutons trois noms à notre Deque d’affectations : Hannah, Benny et Gordon. Enfin, nous imprimons le contenu de la file d’attente de nos devoirs sur la console.

"Career Karma est entré dans ma vie quand j’en avais le plus besoin et m’a rapidement aidé à m’adapter à un bootcamp. Deux mois après l’obtention de 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

Vous pouvez voir que, dans cet exemple, nos données sont stockées sous forme de deque au lieu d’une pile (indiqué par le fait que notre résultat est enfermé dans deque()). C’est parce que nous utilisons la structure deque, même si nos données agissent toujours comme une pile.

Supprimer des éléments d’une pile Deque

Pour supprimer des éléments d’une pile deque , vous pouvez utiliser la méthode pop().

Supposons que nous venons de noter les devoirs de Gordon et Benny. Pour les supprimer de notre pile, nous pourrions utiliser le code suivant :

Notre code renvoie :

Dans notre code, nous créons d’abord une pile deque avec trois valeurs. Ensuite, nous exécutons le pop() deux fois. Chaque fois que l’instruction pop() s’exécute, l’élément en haut de notre pile est supprimé. Cela signifie que les valeurs Gordon puis Benny sont supprimées de notre pile, laissant Hann ah comme seul élément restant dans notre pile.

Pour en savoir plus sur la classe Python deque, lisez notre tutoriel sur les files d’attente Python et deques.

Conclusion

Les piles vous permettent de stocker les données dans l’ordre dernier entré, premier sorti. Il existe plusieurs façons d’implémenter une pile en Python, mais les deux approches les plus pratiques consistent à utiliser la structure de liste intégrée de Python ou à utiliser la classe collections.deque().

Ce tutoriel a expliqué, en référence à des exemples, comment créer une pile en Python à l’aide de listes et de collections.deque(). Vous êtes maintenant prêt à commencer à créer vos propres piles comme un développeur Python professionnel !