一、导入
1,dir功能
print(dir([]))告诉我这个列表拥有的所有方法
带着双下划线的方法叫做双下方法。
2,一个列表执行了_iter_()之后的返回值就是一个迭代器
3,_length_hint_元素个数
4,_setstate_从指定位置取值
5,[]._iter_()迭代器---->_next_通过next就可以从迭代器中一个一个的取值
6、迭代器中的_next_()方法可以一个一个的获取值
二、迭代器概念
三、可迭代的
四、可迭代的—>迭代器
可迭代的+._iter_()方法就可以得到一个迭代器
#从容器类型中一个一个的取值,会把所有的值都取到
#可以节省内存空间
#迭代器并不会在内存中再占用一个大块内存,而是随着循环每次生成一个,每次next每次给我一个
七、生成器
1,生成器的本质是迭代器
2,生成器函数
( =(ret)
(1
ret =(ret._next_())
i range(20000 %i
3,监听文件的输入
def tail(filename):
f =open('file',encoding ='utf-8')
while True:
line = f.readline()
if line.strip():
yield line.strip()
g = tail ('file')
for i in g:
if 'python' in i :
print(i)