Python教程

Python 迭代器对象iterator

本文主要是介绍Python 迭代器对象iterator,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

(1) 定义:可以被next()函数调用并返回下一个值的对象。

(2) 语法

class 迭代器类名:
    def __init__(self, 聚合对象):
        self.聚合对象= 聚合对象 
 
    def __next__(self): 
        if 没有元素:
            raise StopIteration
            return 聚合对象元素

遍历商品控制器

class CommodityController:
      pass

controller = CommodityController()
controller.add_commodity("铅笔")
controller.add_commodity("倚天剑")
controller.add_commodity("奥特曼")

for item in controller:
    print(item)

class CommodityIierator:
    def __init__(self, list_iterator):
        self.list_iterator= list_iterator
        self.i=0
    def __next__(self):
        if self.i>=len(self.list_iterator):
            raise StopIteration
        item=self.list_iterator[self.i]
        self.i+=1
        return item


class CommodityController:
    def __init__(self):
        self.__list_commodity=[]
    def __iter__(self):
        return CommodityIierator(self.__list_commodity)
    def add_commodity(self,item):
        self.__list_commodity.append(item)

passcontroller = CommodityController()
passcontroller.add_commodity("铅笔")
passcontroller.add_commodity("倚天剑")
passcontroller.add_commodity("奥特曼")
for item in passcontroller:
    print(item)

这篇关于Python 迭代器对象iterator的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!