Úvod do Iterator v Pythone
Iterátor v pythone je metóda, ktorá opakuje program prostredníctvom protokolu iterátora. Tento koncept sa skladá z dvoch kľúčových prvkov, iterátora a iterátora. Objekt, na ktorom iterátor iteruje, sa nazýva iterovateľný. Protokol iterátora je zostavený pomocou troch segmentov.
- Konštruktor je dosiahnutý pomocou funkcie init a je tu priradená maximálna hodnota pre iteráciu.
- Špeciálna funkcia __iter__ sa používa na priradenie počiatočnej hodnoty.
- Špeciálna funkcia __next__ sa používa na opakovanie každej hodnoty iterátora.
Príklady pre Python Iterator
Nasledujú rôzne príklady Iterátora v Pythone:
Príklad č. 1 - Vzorový iteračný protokol
class sample:
# Constructor
def __init__(self, limit_value):
self.limit_value = limit_value
# Called when iteration is initialized
def __iter__(self):
self.iterator = 0
return self
# To move to next element.
def __next__(self):
# Store current value ofx
x = self.iterator
# Stop iteration if limit is reached
if x > self.limit_value:
raise StopIteration
# Else increment and return old value
self.iterator = iterator + 1;
return iterator
Príklad č. 2 - Ručne riadený program Iterátora
V nižšie uvedenom programe je proces iterátora manuálne riadený v samotnom programe statickým volaním inicializačných metód iterátora a metódami sekvenovania iterátora.
class sample:
# Constructor
def __init__(self, lastelement):
self.lastelement = lastelement
def __limit__(self):
return self.lastelement
# initialization of iteration
def __iter__(self):
self.iterator_value = 1
return self.iterator_value
# move to next value or element.
def __next__(self):
# ofx current value stopped
iterator_value = self.iterator_value
# iteration stopped on limit reached
if iterator_value > self.lastelement:
raise StopIteration
# Else increment and return old value
self.iterator_value = iterator_value + 1;
return iterator_value
# declaration of object
# processed count
var1=int(input( " Enter the limit : " ) )
Object = sample(var1)
iterator = Object.__iter__()
loopcount = Object.__limit__()
while(iterator < loopcount):
print("The value of iterator now is : ", iterator)
iterator = Object.__next__()
Príklad č. 3 - Zabudované Iterátory
Nižšie uvedený program predpokladá použitie iterátora nad vstavanými entitami pythonu, ako sú zoznam, n-tica, reťazec, slovník.
# A list value is been iterated
print("Iteration over a list")
l = ( " One ", " Two ", " Three ", " Four ", " Five " ) for iterator_element in l:
print(iterator_element)
# A tuple value is being iterated
print("\n Iteration on a tuple ")
t = ( " One ", " Two ", " Three ", " Four ", " Five " )
for iterator_element in t:
print(iterator_element)
# A string value is been iterated
print("\n Iteration on a String")
s = "Test"
for iterator_element in s :
print(iterator_element)
# A dictionary value is been iterated
print("\n Iteration on a dictionary element")
d = dict()
d( '1234567890' ) = 1
d( 'abcdefghij' ) = 2
for iterator_element in d :
print("%s %d" %(iterator_element, d(iterator_element)))
Vysvetlenie: program iteruje cez štyri rôzne iterovateľné objekty, ako sú zoznam, n-tica, reťazec a slovník s iterátorom „i“.
Výkon :
Príklad č. 4 - Vyhlásenie o riadení slučky
Tento program iteruje prostredníctvom súboru daných typov automobilov a tlačí zodpovedajúce automobily na trhu pod každým z uvedených typov. tento proces je dosiahnutý dvoma prípadmi opakovania slučky chvíľu a slučkou for for vnorenými do tejto chvíle. Kľúčovým prvkom, ktorý si treba zapamätať, je to, že slučka for sa vykonáva v zozname pomocou špecifickej hodnoty iterátora.
# PYTHONOVÝ PROGRAM VYUŽÍVANIA VYHLÁSENÍ O KONTROLE LOOP #
var_a = 1
var_b = 2
while var_a < var_b:
var_c = ( " SUV ", " sedan ", " hatchback ", " End " ) for iterator in var_c:
if iterator == " SUV ":
print( " Jeep " )
print( " Kia Seltos " )
print( " Suzuki Ertiga " )
print( " Huyndai venue " )
print( " Scorpio " )
print( " Hyundai Creta " )
print( " ----- END OF SUV CARS -------- " )
if iterator == " sedan " :
pass
if iterator == " hatchback " :
print( " Hyundai i20 " )
print( " suzuki alto " )
print( " Renault KWID" )
print( " Wagon R " )
print( " Tata Tiago " )
print( " Maruti Ceerio " )
print( " Hyundai Santro " )
print( " Tata Nano " )
print( " --------------- " )
if iterator == "End":
break
var_a = var_a+1
Výkon :
Príklad č. 5 - Pre slučku
Tento program používa iterátor orientovaný na techniku slučiek na navrhovanie typu údajov slovníka. tento dátový typ kolekcie je formulovaný hromadením dvoch nezávislých prvkov zoznamu.
# Program for list to dictionary concatenation #
#Variable declaration
Key_elements=() value_elements=() # Total nuumber of elements to be processed
var1=int(input( " Count of elements for the dictionry : " ) )
print("--------------------KEY_ELEMENTS-----------------------")
for x in range(0, var1):
element= int ( input ( " Element value entered " + str(x+1) + " : " ) )
Key_elements.append(element)
print("--------------------VALUE_ELEMENTSS---------------------")
for x in range(0, var1):
element= int ( input (" Element value entered" + str(x+1) + ":"))
value_elements.append(element)
d= dict ( zip ( Key_elements, value_elements ) )
#Print Section
print("The dictionary formulated is:")
print(d)
výkon
Výhody pythonových slučiek
- Kľúčové výhody iterátorov sú uvedené nižšie,
- Redukcia kódu
- Redundancia kódu je veľmi vyriešená
- Znižuje zložitosť kódu
- Prináša väčšiu stabilitu pri kódovaní
Záver - Iterátor v Pythone
Dominantnosť prejavov akéhokoľvek programovacieho jazyka závisí od klasifikovanej sady kódovacích funkcií. V takom prípade je iteračný program programovania python v zásade stabilný a pružný voči kódu, vďaka ktorému je jedným z predchádzajúcich dôvodov, vďaka ktorým tento jazyk dominuje na trhu. Koncepty podobných iterátorov robia z pythonu najsofistikovanejší jazyk pre vývoj programov a navyše jazyk má taký význam v prostredí vývoja softvéru.
Odporúčané články
Toto bol sprievodca Iterátorom v Pythone. Tu diskutujeme aj o výhodách Iterátora v Pythone a príkladoch. Ak sa chcete dozvedieť viac, môžete si pozrieť aj nasledujúce články -
- String Array v Pythone
- Spracovanie výnimiek Pythonu
- Factorial v Pythone
- Slučky v Pythone
- Čo je to reťazec?
- Sprievodca rôznymi príkazmi kontroly v C ++