Въведение в Iterator в Python

Итераторът в python е метод, който свързва програмата чрез итераторския протокол. Тази концепция се състои от два ключови елемента - итератора и итерабела. Обектът, по който итераторът повтаря, се нарича итерабелен. Протоколът за итератор е изграден с помощта на под три сегмента.

  1. Конструкторът се постига с помощта на функцията init и тук е зададена максималната стойност за итерацията.
  2. Специалната функция __iter__ се използва за задаване на начална стойност.
  3. Специалната функция __next__ се използва за примка през всяка стойност на итератора.

Примери за Python Iterator

По-долу са дадени различни примери за Iterator в Python:

Пример №1 - Пробен протокол за итератор

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

Пример №2 - ръчно задвижвана програма за итератор

В програмата по-долу процесът на итератора се задвижва ръчно в самата програма чрез статично извикване на методите за инициализация на итератора и последователността на итератора.

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

Пример №3 - Вградени итератори

По-долу програмата предполага използването на итератор за вградени python обекти като списък, кортеж, низ, речник.

# 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)))

Обяснение: програмата преобразува четири различни итерабелни обекта като списък, кортеж, низ и речник с итератора „i“.

Резултат:

Пример # 4 - Оператор за управление на контура

Тази програма повтаря през набор от дадени типове автомобили и отпечатва съответните автомобили на пазара под всеки от посочените типове. този процес се постига от два циклични инстанции за известно време и за цикъл, вложен във времето. Ключовият елемент, който трябва да се отбележи, е, че цикълът for се изпълнява над списък чрез определена стойност на итератор.

# PYTHON ПРОГРАМА, ИЗПОЛЗВАща ИЗЛОЖЕНИЯ ЗА КОНТРОЛ НА 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

Резултат:

Пример №5 - За контур

Тази програма използва итератор, ориентиран към техниката на цикъл за проектиране на тип данни за събиране на речник. този тип данни за колекция се формулира чрез натрупване на два независими елемента от списъка.

# 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)

продукция

Предимства на Python Loops

  • Основните предимства на итераторите са както по-долу,
  • Намаляване на кода
  • Съкращението на кода е много разрешено
  • Намалява сложността на кода
  • Внася по-голяма стабилност в кодирането

Заключение - Итератор в Python

Преобладаващите показани признаци на всеки език за програмиране зависи от класифицирания набор от кодиращи функционалности. В такъв случай итерационният ресурс на програмирането на python е принципно стабилен и гъвкав за кодове, което прави, че той е сред предишните причини, които правят този език да доминира на пазара. Концепции като подобни итератори правят python сред най-сложния език за разработване на програми, а освен това езикът се оказва с такова значение в средата за разработка на софтуер.

Препоръчителни статии

Това е ръководство за итератора в Python. Тук също обсъждаме предимствата на Iterator в Python и примери. Можете също така да разгледате следните статии, за да научите повече -

  1. String Array в Python
  2. Работа с изключение на Python
  3. Факториал в Python
  4. Примки в Python
  5. Какво е масив от струни?
  6. Ръководство за различни изявления за контрол в C ++