Python中迭代器模式的原理是什么

  介绍

这篇文章给大家介绍Python中迭代器模式的原理是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

Python的优点有哪些

1,简单易用,与C/c++、Java、c#等传统语言相比,Python对代码格式的要求没有那么严格;2,Python属于开源的,所有人都可以看到源代码,并且可以被移植在许多平台上使用;3,Python面向对象,能够支持面向过程编程,也支持面向对象编程;4,Python是一种解释性语言,Python写的程序不需要编译成二进制代码,可以直接从源代码运行程序;5,Python功能强大,拥有的模块众多,基本能够实现所有的常见功能。

迭代器模式的演示:

# !/usr/bin/env  Python   #,- *安康;编码:utf-8  - *   时间=__author__  & # 39;安迪# 39;   “““   大话设计模式   设计模式,迭代器模式   迭代器模式(Iterator 模式):提供方法顺序访问一个聚合对象中各元素,而又不暴露该对象的内部表示。   “““   #迭代器抽象类   class 迭代器(对象):   def 才能;第一(自我):   ,才能通过   def 才能;其次(自我):   ,才能通过   def 才能结束(自我):   ,才能通过   def 才能CurrItem(自我):   ,才能通过   #聚集抽象类   class 聚合(对象):   def 才能CreateIterator(自我):   ,才能通过   #具体迭代器类   class  ConcreteIterator(迭代器):   def 才能__init__(自我,,总):   ,,,self.aggregate =总   ,,,self.curr =0   def 才能;第一(自我):   ,,,return  self.aggregate [0]   def 才能;其次(自我):   ,,,ret =,没有   ,,,self.curr  +=1   ,,,if  self.curr  & lt;, len (self.aggregate):   ,,,,,ret =, self.aggregate [self.curr]   ,,,return 受潮湿腐烂   def 才能结束(自我):   ,,,return  True  if  self.curr + 1,祝辞=,len (self.aggregate), else 错误的   def 才能CurrItem(自我):   ,,,return  self.aggregate [self.curr]   #具体聚集类   class  ConcreteAggregate(总):   def 才能__init__(自我):   ,,,self.ilist =, []   def 才能CreateIterator(自我):   ,,,return  ConcreteIterator(自我)   class  ConcreteIteratorDesc(迭代器):   def 才能__init__(自我,,总):   ,,,self.aggregate =总   ,,,self.curr =, len(总)1   def 才能;第一(自我):   ,,,return  self.aggregate [1]   def 才能;其次(自我):   ,,,ret =,没有   ,,,self.curr  -=1   ,,,if  self.curr 祝辞=,0:   ,,,,,ret =, self.aggregate [self.curr]   ,,,return 受潮湿腐烂   def 才能结束(自我):   ,,,return  True  if  self.curr-1<0, else 错误的   def 才能CurrItem(自我):   ,,,return  self.aggregate [self.curr]   if  __name__==癬_main__":   时间=ca 才能;ConcreteAggregate ()   ca.ilist.append才能(“大鸟”)   ca.ilist.append才能(“小菜“)   ca.ilist.append才能(“老外“)   ca.ilist.append才能(“小偷“)   时间=itor 才能;ConcreteIterator (ca.ilist)   print 才能;itor.First ()   while 才能;not  itor.Isdone ():   ,,,print  itor.Next ()   print 才能;“- - - - -倒序- - - - -“   时间=itordesc 才能;ConcreteIteratorDesc (ca.ilist)   print 才能;itordesc.First ()   while 才能;not  itordesc.Isdone ():   ,,,print  itordesc.Next ()

运行结果:

 Python中迭代器模式的原理是什么

上面类的设计如下图:

 Python中迭代器模式的原理是什么

关于Python中迭代器模式的原理是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

Python中迭代器模式的原理是什么