Introduction à Stack en Python
Python Stack est généralement une structure de données qui fonctionne selon le principe du dernier entré et premier sorti. c'est un type de données abstrait. Un exemple fréquent de structure de pile est un jeu de cartes. tout comme son exemple, même dans l'arène logicielle, Python Stack applique le même ensemble de protocoles. ce qui signifie que toutes les opérations de données ne peuvent être effectuées que selon le principe du dernier entré, premier sorti. à une pointe d'instance spécifique, seul l'élément pinacle de la pile Python est accessible.
Caractéristiques clés de la pile en Python
- L'idéologie clé de la pile est qu'elle fonctionne selon le principe du dernier entré, premier sorti.
- Les opérations push et pop sont utilisées pour insérer et supprimer un élément d'une pile.
- Quelques exemples clés de la pile sont l'analyse de texte et la conversion d'expression.
Deux façons dont Stack peut être implémenté
Les trois principales façons d'implémenter une pile sont les suivantes:
- Implémenter une pile à l'aide d'une collection
- implémenter une pile à l'aide d'une liste
1. Implémentez la pile à l'aide de la collection
Les collections sont des types de données utilisés pour stocker des collections de données. La structure des données de la pile pourrait être appliquée à la pratique de la programmation python dans une collection en utilisant la classe deque. la classe deque fonctionne essentiellement dans l'ordre LIFO. l'exemple ci-dessous illustre les opérations de pile à l'aide de collections.
Code:
from country_list import countries_for_language
from collections import deque
# extract all the values of the countries
countries_dict = dict(countries_for_language('en'))
country_values = countries_dict.values()
#Add all the country names to a stack
Country_stack_variable = deque()
for i in country_values:
Country_stack_variable.append(i)
print('Stack variable type :', type(Country_stack_variable), '\n')
print('Stack variable values :', Country_stack_variable, '\n')
while Country_stack_variable:
country_temp = Country_stack_variable.pop()
if country_temp(0) == 'A':
print(country_temp)
if country_temp(0) == 'Z':
print(country_temp)
print('\n Stack variable values after Pop :', Country_stack_variable, '\n')
Production :
Explication:
- Le programme ci-dessus utilise un type de données de collecte pour préparer la pile. ce processus implique l'importation de la classe deque dans la bibliothèque de collection. Ici, l'import 'country_list' est utilisé pour extraire le catalogue de tous les pays. Toutes les valeurs de pays sont extraites dans une variable de dictionnaire car l'extrait de bibliothèque de pays est au format dict où la clé est une notation de l'alphabet sous lequel le pays se trouve et la valeur est le nom réel du pays.
- Pour obtenir la fonctionnalité d'empilement, un objet deque est créé. c'est du type deque. chaque élément de la classe country est rempli dans cet objet à l'aide d'une boucle for. cette boucle for construit la fonctionnalité de pile avec toutes les entrées empilées dans l'ordre croissant. Pour élucider que cet élément de données fonctionne exactement comme une pile.
- L'opération pop est appliquée. ici, chaque élément de la pile est sauté et imprimé à l'aide de la fonction pop (). nous pourrions remarquer que chaque pop () imprime le nom de pays le plus récent dans la console qui dans ce cas commence par la notation alphabétique 'z' et imprime la notation alphabétique 'a' comme dernier ensemble d'éléments.
2. Implémentez la pile à l'aide de List
En tant que collection, la pile python peut également être implémentée au moyen d'une simple liste python. dire précisément que toute liste déclarée en python a tendance à agir comme une pile par nature. le fait de faire apparaître une valeur dans une liste renvoie toujours la dernière valeur qu'elle contient. L'exemple de code ci-dessous explique l'implémentation d'une pile à l'aide d'une liste,
Code:
from country_list import countries_for_language
# extract all the values of the countries
countries_dict = dict(countries_for_language('en'))
country_values = countries_dict.values()
#Add all the country names to a stack
Country_stack_variable = () for i in country_values:
Country_stack_variable.append(i)
print('Stack variable type :', type(Country_stack_variable), '\n')
print('Stack variable values :', Country_stack_variable, '\n')
while Country_stack_variable:
country_temp = Country_stack_variable.pop()
if country_temp(0) == 'A':
print(country_temp)
if country_temp(0) == 'Z':
print(country_temp)
print('\n Stack variable values after Pop :', Country_stack_variable, '\n')
Production :
Explication:
- Le programme ci-dessus utilise une liste de types de données pour préparer la pile. Ici, une liste standard dans la structure de données python est utilisée pour atteindre cette fonctionnalité.
- Comme le programme ci-dessus ici aussi, l'import 'country_list' est utilisé pour extraire le catalogue de tous les pays. Toutes les valeurs de pays sont extraites dans une variable de dictionnaire car l'extrait de bibliothèque de pays est au format dict où la clé est une notation de l'alphabet sous lequel le pays se trouve et la valeur est le nom réel du pays.
- Chaque élément de la classe country est rempli dans cet objet à l'aide d'une boucle. cette boucle for construit la liste empilée avec toutes les entrées empilées dans l'ordre croissant. Pour élucider que cet élément de données fonctionne exactement comme une pile. L'opération pop est également appliquée ici, mais contrairement à un objet deque ici, l'opération est appliquée sur une liste python.
- Ici, chaque élément de la liste empilée est sauté et imprimé à l'aide de la fonction pop (). Nous pourrions remarquer que chaque pop () imprime le nom de pays le plus récent dans la console qui dans ce cas commence par la notation alphabétique 'z' et imprime la notation alphabétique 'a' comme dernier ensemble d'éléments.
Opérations de pile effectuées en Python
Certains d'entre eux sont donnés ci-dessous:
1. Pseudocode pour le fonctionnement PUSH
- Évaluer le volume de la pile
- Lorsque le débordement est atteint, notifiez l'état et quittez le programme.
- lorsqu'une pile ne déborde pas, le volume peut être incrémenté et l'élément peut être ajouté en haut de la pile.
2. Pseudocode pour opération POP
- Évaluer le volume de la pile
- Lorsque le débordement est atteint, notifiez l'état et quittez le programme.
- lorsqu'une pile n'est pas sous-alimentée, le volume peut être incrémenté et l'élément peut être ajouté en haut de la pile.
Conclusion
La capacité de Python à exprimer la fonctionnalité de pile sur plusieurs approches montre la flexibilité de ce langage de programmation super efficace. python exprime sa capacité classée avec son agilité pour répondre à presque tous les besoins de structure de données. cela fait de ce langage l'un des plus préférés dans le domaine du développement logiciel.
Articles recommandés
Ceci est un guide pour une pile en Python. Nous discutons ici de l'introduction, Trois façons dont la pile peut être implémentée, Caractéristiques clés de la pile. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus–
- Matplotlib en Python
- Nombre inversé en Python
- Compilateurs Python
- Fonction récursive en Python