dukejunior
——未来程式工作室

01、使用 for...in...的循环语法,依次拿到数据 进行使用,我们把这样的过程称为遍历,也叫迭代。

02、isinstance(x, A_tuple):判断⼀个对象是否可以迭代,判断一个对象是否是一个已知的类型,认为子类是一种父类类型,考虑继承关系;判断两个类型是否相同推荐使用 isinstance

03、遍历可迭代对象: for item in Iterable 循环的本质就是先通过 iter() 函数获取可迭代对象 Iterable 的迭代器,然后对获取到的迭代器不断调用 next() 方法来获取下一个值并将其赋值给 item,当遇到 StopIteration 的异常后循环结束。

04、遍历迭代器: for item in Iterator 循环的迭代器,不断调用 next() 方法来获取下一个值并将其赋值给 item,当遇到 StopIteration 的异常后循环结束。

05、迭代器是访问可迭代对象的工具;是指用 iter(obj) 函数返回的对象(实例);可以用 next(it) 函数获取可迭代对象的数据; 迭代器函数 iter 和 next

06、iter(iterable) 从可迭代对象中返回一个迭代器,iterable 必须是能提供一个迭代器的对象

07、next(iterator) 从迭代器 iterator 中获取下一个记录 , 如果无法获取下一条记录,则触发 StopIteration 异常

08、迭代器只能向前取值,不会后退 用 iter() 可以返回一个可迭代对象的迭代器, 迭代器对象能用 next() 获取下一个元素.

09、迭代器不要求你事先准备好整个迭代过程中所有的元素。仅仅是在迭代至某个元素时才计算该元素,而在这之前或之后,元素可以不存在或者被销毁。这个特点使得它特别适合用于遍历一些巨大的或是无限的集合

10、生成器是能够动态提供数据的对象,生成器对象也是可迭代对象(实例),在这里可以认为生成器其实就 是迭代器的一种。

11、生成器函数的定义含有yield,语句的函数是生成器函数,此函数被调用将返回一个生成器对象,yield 翻译为(产生戒生成)

12、yield 语句:def 函数(): yield 表达式 说明:yield 用于 def 函数中,目的是将此函数作用生成器函数使用;yield 用来生成数据,供迭代器的 next(it) 函数使用

13、生成器函数的调用将返回一个生成器对象,生成器对象是一个可迭代对象

14、生成器表达式:(表达式 for 变量 in 可迭代对象 [if 真值表达式 ]), if 子句可以省略,作用:用推导式的形式创建一个新的生成器

15、迭代工具函数的作用是生成一个个性化的可迭代对象

16、for x,y in zip(numbers,names): print(y,'客服电话是:',x),返回一个 zip 对象,此对象用于生成元组,此元组的个数由最小的可迭代对象 决定

17、enumerate(iterable[, start]) 生成带索引的枚举对象,返回迭代类型为索引-值对(index-value 对), 默认索引从零开始,也可以用 start 指定

18、for t in enumerate(names): print(t)

迭代器

返回

 

生成器函数

返回

 

迭代工具

返回

posted on 2019-10-15 17:09  公爵二世  阅读(77)  评论(0)    收藏  举报