Uvod o Iteratorju v Pythonu
Iterator v pythonu je metoda, ki program zanka s protokolom iteratorja. Ta koncept sestavljata dva ključna elementa, iterator in iterabilni. Predmet, na katerega iterator ponavlja, se imenuje iterable. Protokol iteratorja je sestavljen s spodnjimi tremi segmenti.
- Konstruktor dosežemo s funkcijo init in tukaj je dodeljena največja vrednost ponovitve.
- Za dodelitev začetne vrednosti se uporablja posebna __iter__ funkcija.
- Posebna funkcija __next__ se uporablja za zanko skozi vsako vrednost iteratorja.
Primeri za Python Iterator
Spodaj so različni primeri Iteratorja v Pythonu:
Primer # 1 - protokol iteratorja vzorcev
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
Primer # 2 - Iterator program z ročnim pogonom
V spodnjem programu se postopek iteratorja ročno poganja v samem programu s statičnim pozivanjem inicializacijskih mehanizmov iteratorja in iteratorjevega zaporedja.
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__()
Primer # 3 - Vgrajeni iteratorji
Spodnji program pomeni uporabo iteratorja nad vgrajenimi entitetami python-a, kot so seznam, tuple, string, slovar.
# 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)))
Pojasnilo: program iterati čez štiri različne predvajalne predmete, kot so seznam, ujemanje, niz in slovar z iteratorjem "i".
Izhod:
Primer # 4 - Stavek o nadzoru zanke
Ta program ponavlja skozi niz določenih tipov avtomobilov in natisne ustrezne avtomobile na trgu pod vsako od omenjenih vrst. ta postopek dosežemo z dvema primerkoma zankovanja in v tem času gnezdi zanka. Ključni element, ki ga je treba opozoriti, je, da se zanka for izvaja na seznamu s pomočjo določene vrednosti iteratorja.
# PYTHON PROGRAM, KI NAMENJAVA IZJAVE O NADZORU ZA 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
Izhod:
Primer # 5 - Za zanko
Ta program uporablja iterator orientiran za zanko tehniko za oblikovanje vrste podatkov zbirke slovarjev. ta zbirka podatkov je oblikovana z zbiranjem dveh neodvisnih elementov seznama.
# 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)
izhod
Prednosti pitonskih zank
- Ključne prednosti iteratorjev so naslednje:
- Zmanjšanje kode
- Odpuščanje kode je zelo rešeno
- Zmanjša zapletenost kode
- V kodiranje prinese večjo stabilnost
Zaključek - Iterator v Pythonu
Prevladujoči znaki katerega koli programskega jezika so odvisni od klasificiranega nabora funkcij kodiranja. V takšnem primeru je iteracijski vir programa python v glavnem enakomeren in prilagodljiv kodi, zaradi česar je eden izmed prvih razlogov, zaradi katerih ta jezik prevladuje na trgu. Pojmi podobnih iteratorjev pitona uvrščajo med najbolj prefinjen jezik programskega razvoja, poleg tega pa je jezik takšnega pomena v okolju programske opreme.
Priporočeni članki
To je vodnik za Iterator v Pythonu. Tukaj razpravljamo tudi o prednostih Iteratorja v Pythonu in o primerih. Za več informacij si lahko ogledate tudi naslednje članke -
- Niz nizov v Pythonu
- Ravnanje izjeme Python
- Factorial v Pythonu
- Zanke v Pythonu
- Kaj je niz nizov?
- Vodnik po različnih izjavah nadzora v C ++