可迭代(Interable),迭代器(Iterator),生成器(generator)的手记
今天既然看到这里了,就做个笔记。这个玩意已经花过我很多时间。 可迭代对象只要有__iter__属性的都可以称呼可迭代(Interable)。 迭代器只要拥有__iter__与__next__属性就是迭代器(Iterator)。 Python里面可以通过iter方法生成迭代器(Iterator),iter(可迭代(Interable)) 生成器(generator),可以用简单生成器(i,for i in range(10)),写法跟列表生成器样式通用,把[]换成(), 还有可以通过自定义方法用yield生成。 生成器肯定是迭代器,更加是可迭代对象,生成器的功能是最多的 相对迭代器有三个生成器对象的专属方法: send throw close 简单的来说,迭代器只能从对象里面取值,生成器可以互动了,你还可以向对象里面送值。 yield,send,throw,close。我这里不写了,篇幅很长。 可以参考:https://blog.csdn.net/jpch89/article/details/87036970 一般用的最多也就yield及send,携程的时候要用。 还有可以通过自定义方法用yield生成。 [Hái yǒu kěyǐ tōngguò zì dìngyì fāngfǎ yòng yield shēngchéng.] There can be used a method