day19三大神器和scv文件
1迭代器
1什么是迭代器(iter)
迭代器是容器型数据类型
特点:无法通过打印迭代器查看元素,也无法统计个数
需要使用时候必须从迭代器中取出,并且取出以后元素从迭代器中消失
2创建迭代器-将其他序列转换成迭代器
l1=iter('hello') #<str_iterator object at 0x0000000000605978>
l2=iter([1,3,5,7,9]) #<list_iterator object at 0x0000000001DD1668>
3不管什么方式获得了迭代器的元素,被获取的元素一定会消失
print(next(l1)) #h
print(next(l1)) #e
print(next(l1)) #l
for i in l2:
print(i)
2生成器
生成器是一种容器,但是这个保存的不是多个数据,而是容器的算法
同时具有迭代器保存数据的特点
1,打印看不到内容
2,不支持len操作
3,元素取一个少一个
2创建生成器
调用一个带有yield关键字的函数就可以得到一个生成器对象
只要有,就创建生成器对象,不管yield在哪里