Introduktion til Stack in Python
Python Stack er generelt en datastruktur, der fungerer efter sidst ind og først ud princippet. det er en abstrakt datatype. Et par hyppige eksempler på stakstruktur er et kortstykke. ligesom dets eksempel, selv i softwarearenaen anvender Python Stack det samme sæt protokoller. hvilket betyder, at alle datafunktioner kun kan udføres sidst efter først-ud-princippet. på et specifikt tip af forekomsten er det kun adgang til højdepunktelementet i Python Stack.
Nøgleegenskaber ved stakken i Python
- Stabens nøgleideologi er, at det fungerer efter sidst i første ud-princip.
- Tryk og pop-operationerne bruges til at indsætte og slette et element fra en stak.
- Nogle nøgleeksempler på stakken er tekstopdeling og konvertering af udtryk.
To måder Stack kan implementeres
De tre vigtigste måder, hvorpå en stabel kan implementeres, er som nedenfor,
- Implementere en stak ved hjælp af en samling
- implementere en stabel ved hjælp af en liste
1. Implementér stakken ved hjælp af samling
Samlinger er datatyper, der bruges til at gemme samlinger af data. Stakdatastrukturen kunne anvendes til praksis i python-programmering i en samling ved hjælp af deque-klassen. Deque-klassen fungerer grundlæggende i LIFO-rækkefølgen. nedenstående eksempel viser stapelfunktioner ved hjælp af samlinger.
Kode:
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')
Output:
Forklaring:
- Ovenstående program bruger en samling datatype til at forberede stakken. denne proces involverer at importere deque klassen i samlingsbiblioteket. Her bruges importen 'country_list' til at trække kataloget over alle lande ud. Alle landværdier ekstraheres til en ordbogsvariabel, fordi landbibliotekets uddrag er af et dikteret format, hvor nøglen er en notation af alfabetet, under hvilket landet falder, og værdien er det aktuelle lands navn.
- For at opnå stabelfunktionen oprettes et deque-objekt. dette er af typen deque. hvert element i landsklassen udfyldes i dette objekt ved hjælp af en for en løkke. dette til loop konstruerer stakfunktionaliteten med alle input, der er stablet op i stigende rækkefølge. For at belyse, at dette dataelement fungerer nøjagtigt som en stak.
- Pop-operationen anvendes. her poppes og udskrives hvert element i stakken ved hjælp af pop () -funktionen. vi kunne bemærke, at hver pop () udskriver det nyeste landnavn i konsollen, som i dette tilfælde starter med den alfabetiske notation 'z' og udskriver den alfabetiske notation 'a' som det sidste sæt elementer.
2. Implementere stak ved hjælp af Liste
Som en samling kan pythonstakken også implementeres ved hjælp af en simpel pythonliste. netop at sige, at enhver liste, der er erklæret i python, har en tendens til at fungere som en stak af natur. så dukker en værdi på en liste altid tilbage den sidste værdi i den. Nedenstående kodeeksempel forklarer implementeringen af en stabel ved hjælp af en liste,
Kode:
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')
Output:
Forklaring:
- Ovenstående program bruger en liste over datatyper til forberedelse af stakken. Her bruges en standardliste i python-datastrukturen til at opnå denne funktionalitet.
- Ligesom ovenstående program bruges også importen 'country_list' til at hente kataloget over alle lande. Alle landværdier ekstraheres til en ordbogsvariabel, fordi landbibliotekets uddrag er af et dikteret format, hvor nøglen er en notation af alfabetet, under hvilket landet falder, og værdien er det aktuelle lands navn.
- Hvert element i landsklassen udfyldes i dette objekt ved hjælp af en løkke. dette til loop konstruerer den stablede liste med alle input, der er stablet op i stigende rækkefølge. For at belyse, at dette dataelement fungerer nøjagtigt som en stak. Pop-operationen anvendes også her, men i modsætning til på et deque-objekt her, anvendes operationen på en python-liste.
- Her poppes og udskrives hvert element i den stablede liste ved hjælp af pop () -funktionen. Vi kunne bemærke, at hver pop () udskriver det nyeste landnavn i konsollen, som i dette tilfælde starter med den alfabetiske notation 'z' og udskriver den alfabetiske notation 'a' som det sidste sæt elementer.
Stabeloperationer udført i Python
Nogle af dem er givet nedenfor:
1. Pseudokode til PUSH-drift
- Evaluer mængden af stakken
- Når overløbet er nået, skal du underrette status og exit-programmet.
- når en stak ikke flyder over, kan lydstyrken øges, og elementet kan føjes til toppen af stakken.
2. Pseudokode til POP-drift
- Evaluer mængden af stakken
- Når overløbet er nået, skal du underrette status og exit-programmet.
- når en stabel ikke er under strømning, kan lydstyrken øges, og elementet kan føjes til toppen af stakken.
Konklusion
Pythons evne til at udtrykke stakfunktionaliteten på flere tilgange udviser fleksibiliteten i dette supereffektive programmeringssprog. python udtrykker sin klassificerede evne med sin smidighed til at passe til næsten ethvert datastruktur behov. dette gør dette sprog til det mest foretrukne inden for softwareudviklingsarenaen.
Anbefalede artikler
Dette er en guide til en stak i Python. Her diskuterer vi introduktionen. Tre måder Stack kan implementeres, nøglekarakteristika for stakken. Du kan også gennemgå vores andre foreslåede artikler for at lære mere–
- Matplotlib i Python
- Omvendt nummer i Python
- Python-kompilatorer
- Rekursiv funktion i Python