В Python есть несколько способов петли по данным. В то время как многие языки программирования поставляются только с петлями ( для петлей , В то время как петли ), в Python у вас также есть вещь по имени итераторы .
Итератор является инструментом, используемым для повторения значения, а итерация – это активность повторной обратной связи.
Каждое повторение процесса называется «итерацией», и результат, полученный от каждой итерации, является значением.
Для петлей
Путь по умолчанию для цикла по поводу данных с использованием для циклов.
Петтерна ниже имеет пять итераций, потому что длина списка составляет пять.
goods=['apple','sony','lenovo','acer','dell'] index=0 while index < len(goods): print(goods[index]) index+=1
Для петель можно использовать для простой реализации, итерацией стоимости путем индексации, но только для типов последовательности: Строки , Списки , кортеж группа
Итераторы
Для неистных типов, таких как Словари , коллекции, файловые объекты и т. Д. У этого нет индекса, нужно найти способ повторить значение, которое не зависит от индекса, и это может привести к использованию итераторов.
Призыв к obj.iter ()
Метод возвращает объект итератора (итератор).
В дополнение к файловым объектам, словарям, коллекциям, спискам и т. Д. – это лишь нерешительные объекты, которые могут генерировать объекты итерационные итеративные значения, позвонив на iter ()
метод
Затем позвонив Next ()
Метод на объекте итератора вы получаете следующее значение.
>>> s={1,2,3} >>> i=iter(s) >>> next(i) 1 >>> next(i) 2 >>> next(i) 3 >>> next(i) # StopIteration exception
Вы можете использовать объект iTerator для итерации по словарю, программа ниже показывает пример того:
dic = {'a':1,'b':2,'c':3} d_iterator = iter(dic) # d_iterator while True: try: print(next(d_iterator)) except(StopIteration): break
Ссылки по теме:
Оригинал: “https://dev.to/natamacm/iterators-in-python-418e”