Iterátor v Pythonu - Výhody smyček Python - Příklad

Obsah:

Anonim

Úvod do Iterator v Pythonu

Iterátor v pythonu je metoda, která smyčky programuje prostřednictvím protokolu iterátorů. Tento koncept se skládá ze dvou klíčových prvků, iterátoru a iterátoru. Objekt, na kterém iterátor iteruje, se nazývá iterovatelný. Protokol iterátoru je vytvořen pomocí tří segmentů.

  1. Konstruktor je dosažen pomocí funkce init a je zde přiřazena maximální hodnota pro iteraci.
  2. Pro přiřazení počáteční hodnoty se používá speciální funkce __iter__.
  3. Pro opakování každé hodnoty iterátoru se používá speciální funkce __next__.

Příklady pro Python Iterator

Níže jsou uvedeny různé příklady Iterátoru v Pythonu:

Příklad č. 1 - Ukázkový protokol iterátoru

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

Příklad č. 2 - Ručně řízený program Iterator

V níže uvedeném programu je proces iterátoru ručně řízen v samotném programu statickým vyvoláním metod inicializace iterátoru a sekvenčních metod iterátoru.

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__()

Příklad č. 3 - Vestavěné Iterátory

Níže uvedený program předpokládá použití iterátoru nad vestavěnými pythonovými entitami, jako je seznam, n-tice, řetězec, 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)))

Vysvětlení: program iteruje přes čtyři různé iterovatelné objekty, jako je seznam, n-tice, řetězec a slovník s iterátorem „i“.

Výstup :

Příklad č. 4 - Řídicí příkaz smyčky

Tento program iteruje prostřednictvím sady daných typů vozidel a vytiskne odpovídající automobily na trhu pod každým z uvedených typů. tohoto procesu je dosaženo dvěma instancemi opakování chvíli a smyčkou for for vnořenou do chvíle. Klíčovým prvkem, který je třeba poznamenat, je to, že smyčka for se provádí přes seznam pomocí specifické hodnoty iterátoru.

# PYTHONOVÝ PROGRAM POUŽÍVÁNÍ PROHLÁŠENÍ O KONTROLE LOOPU #

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ýstup :

Příklad č. 5 - Pro smyčku

Tento program používá pro návrh datového typu kolekce slovníku iterátor orientovaný na smyčkovou techniku. tento datový typ kolekce je vytvořen hromaděním dvou nezávislých prvků seznamu.

# 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ýstup

Výhody pythonových smyček

  • Klíčové výhody iterátorů jsou níže,
  • Redukce kódu
  • Redundance kódu je velmi vyřešena
  • Snižuje složitost kódu
  • Vnáší do kódování větší stabilitu

Závěr - Iterátor v Pythonu

Dominance projevů jakéhokoli programovacího jazyka závisí na utajované sadě kódovacích funkcí. V takovém případě je iterační zdroj programování pythonu v zásadě stabilní a pružný k kódu, díky čemuž je jedním z předchozích důvodů, díky nimž tento jazyk ovládá trh. Koncepty podobných iterátorů dělají python mezi nejsofistikovanějším jazykem vývoje programu a navíc se jazyk vyznačuje takovým významem v prostředí vývoje softwaru.

Doporučené články

Toto byl průvodce Iterátorem v Pythonu. Zde také diskutujeme výhody Iterátoru v Pythonu a příklady. Další informace naleznete také v následujících článcích -

  1. String Array v Pythonu
  2. Zpracování výjimek Pythonu
  3. Factorial v Pythonu
  4. Smyčky v Pythonu
  5. Co je pole řetězců?
  6. Průvodce různými příkazy k ovládání v C ++