python中的容器、可迭代对象、迭代器、生成器

1.容器对象:

  容器是一系列元素的集合,str、list、set、dict对象都可以看作是容器,容器都可以被迭代(用在for,while等语句中)

在了解完容器对象之后,我们来了解一种特殊的容器对象之可迭代对象。

2.可迭代对象:

(1)是什么?

  顾名思义,可迭代对象指的就是可以被迭代的对象。迭代指的就是通过循环不断产生“元素”的一种访问“元素”的方式。所以可迭代对象也可以简单理解为可以作用于循环中充当“循环体”的对象

(2)分类?

  ①普通的可迭代对象:str、list、set、dict等

  ②迭代器对象:一种特殊的可迭代对象。

在了解完可迭代对象之后,我们来了解一种特殊的可迭代对象之迭代器对象。

3.迭代器对象:

(1)是什么?

  可以被next函数调用并且不断返回下一个值的对象

(2)为什么?

  通过使用迭代器对象,可以节省内存空间。

(3)怎么做?

  通过调用iter()方法来将非迭代器对象转换成迭代器对象。

(4)特性:

  对象中的“元素”只能通过不断迭代来获取而没办法一次性访问对象中的所有“元素”。

在了解完迭代器对象之后,我们来了解一种特殊的迭代器对象之生成器对象。

4.生成器对象:

(1)是什么?

  一种特殊的迭代器对象

(2)与普通的迭代器对象的区别:

两者的实现方式不同:

  普通的迭代器对象的实现方法一般是需要实现__iter__()、__next__()方法。而在生成器中则可以通过两种方式来实现:

  ①在函数中添加yield关键字。

  ②把列表推导式的中括号改成小括号。

posted @ 2019-12-09 11:12  数据是宝  阅读(320)  评论(0编辑  收藏  举报