Python

Python Queue

Python Queue

Python poskytuje mnoho zabudovaných modulov, funkcií a príkazov, ktoré programátorom pomáhajú ľahko vykonávať rôzne komplikované úlohy. Poskytuje tiež mnoho zabudovaných dátových štruktúr, ako sú zoznamy, n-tice a slovníky, ktoré zabezpečujú efektívne vytváranie a správu údajov v aplikáciách. Fronta je dátová štruktúra, ktorá ukladá a spravuje údaje. Ukladá údaje v poradí podľa poradia príchodu a výdaja (FIFO). Prvok, ktorý sa vloží ako prvý, sa najskôr odstráni. Fungovanie fronty môžeme pochopiť z nášho príkladu z každodenného života. Je to ako fronta zákazníkov; zákazník, ktorý je na prvom mieste, je uľahčený ako prvý. V Pythone môžeme frontu vytvoriť nasledujúcimi spôsobmi:

Tento článok podrobne vysvetľuje príklad Python Queue.

Bežné operácie vo fronte:

Existuje veľa operácií súvisiacich s frontom. Toto sú však 4 bežné operácie vo fronte:

  1. Zaradiť do poradia
  2. Dequeue
  3. Predné
  4. Zadné

Operácia zaradenia do frontu sa vykonáva na pridanie položky do poradia, zatiaľ čo zaradenie do poradia odstráni položky z poradia v rovnakom poradí, v akom boli vložené. Predná operácia navyše vráti prvú a zadná operácia vráti poslednú položku vo fronte.

Implementácia do frontu pomocou zoznamu

Zoznam je široko používanou dátovou štruktúrou zabudovanou v Pythone, ktorá zaraďuje položky do postupnosti. V zozname môžeme použiť funkcie append () a pop (), ktoré slúžia na vkladanie a odstraňovanie položiek z poradia, resp. Funkcia append () pridá položku na koniec zoznamu. Funkcia pop berie index ako argument a odstráni položku zo zoznamu.  Do zoznamu môžeme uložiť položky ľubovoľného typu. Implementujme front pomocou zoznamu Pythonu.

#vytvorenie poradia pomocou zoznamu
# definovanie zoznamu
my_queue = []
# vloženie položiek do poradia
my_queue.pridať (1)
my_queue.pridať (2)
my_queue.pridať (3)
my_queue.pridať (4)
my_queue.pridať (5)
print ("Položky vo fronte:")
print (my_queue)
#odstránenie položiek z poradia
print (my_queue.pop (0))
print (my_queue.pop (0))
print (my_queue.pop (0))
print (my_queue.pop (0))
# vytlačiť poradie po odstránení prvkov
print ("Položky vo fronte:")
print (my_queue)

V uvedenom príklade sme odovzdali index 0 funkcii pop (), pretože musíme odstrániť prvú pridanú položku.

Výkon

Ako sme už diskutovali, do zoznamu môžeme uložiť akýkoľvek typ položiek, vytvorme teda rad pomocou zoznamu, ktorý obsahuje položky heterogénneho typu.

#vytvorenie poradia pomocou zoznamu
# definovanie zoznamu
my_queue = []
# vloženie položiek do poradia
my_queue.pridať (1)
my_queue.pridať („a“)
my_queue.pridať (2)
my_queue.pridať („b“)
my_queue.pridať (3)
print ("Položky vo fronte:")
print (my_queue)
#odstránenie položiek z poradia
print (my_queue.pop (0))
print (my_queue.pop (0))
print (my_queue.pop (0))
print (my_queue.pop (0))
# vytlačiť poradie po odstránení prvkov
print ("Položky vo fronte:")
print (my_queue)

Výkon

Implementácia frontu pomocou frontu.Fronta

Fronta je vstavaný modul Pythonu, ktorý sa používa na vytváranie a implementáciu front. Atribút max size inicializuje veľkosť frontu. Vo frontovom module je k dispozícii veľa funkcií. Napríklad funkcia put () pridá položku do frontu, funkcia get () odstráni prvok z frontu a funkcia qsize () vráti veľkosť frontu. Implementujme front pomocou modulu front.

#importovanie modulu fronty
poradie importu
#vytvorenie frontu veľkosti 5
my_queue = front.Poradie (maximálna veľkosť = 5)
# vloženie položiek do poradia
my_queue.dať (1)
my_queue.dať (2)
my_queue.dať (3)
my_queue.dať (4)
my_queue.dať (5)
print ("Veľkosť frontu je:", my_queue.qsize ())
#odstránenie položiek z poradia
print (my_queue.dostať ())
print (my_queue.dostať ())
print (my_queue.dostať ())
print (my_queue.dostať ())
print ("Veľkosť frontu je:", my_queue.qsize ())

Výkon

Implementácia frontu pomocou deque

Deque je modul triedy zbierok. V porovnaní so zoznamom deque vykonáva operácie zaradenia a zaradenia rýchlejšie. Funkcie append () a popleft () vkladajú a odstraňujú položky z poradia. Implementujme front pomocou deque.

#importovanie modulu zbierok
importovať zbierky
#vytvorenie frontu
my_queue = zbierky.deque ()
# vloženie položiek do poradia
my_queue.pridať (1)
my_queue.pridať (2)
my_queue.pridať (3)
my_queue.pridať (4)
my_queue.pridať (5)
print ("Položky vo fronte sú:")
print (my_queue)
#odstránenie položiek z poradia
print (my_queue.popleft ())
print (my_queue.popleft ())
print (my_queue.popleft ())
print (my_queue.popleft ())
print ("Položky vo fronte sú:")
print (my_queue)

Výkon

Záver

Na ukladanie a správu údajov sa používa front. Ukladá údaje v poradí FIFO. Frontu v Pythone je možné implementovať tromi spôsobmi, ktoré sú v tomto článku vysvetlené s príkladmi.

Hry Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
OpenRA je herný engine Libre / Free Real Time Strategy, ktorý obnovuje rané hry z Westwoodu, ako napríklad klasické Command & Conquer: Red Alert. Dist...
Hry Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Emulátor Dolphin vám umožní hrať vybrané hry Gamecube a Wii na osobných počítačoch Linux (PC). Emulátor Dolphin, ktorý je voľne dostupným emulátorom ...
Hry Ako používať GameConqueror Cheat Engine v Linuxe
Ako používať GameConqueror Cheat Engine v Linuxe
Tento článok obsahuje sprievodcu používaním cheatovacieho modulu GameConqueror v systéme Linux. Mnoho používateľov, ktorí hrajú hry v systéme Windows,...