1.可迭代的对象支持for循环 for x in[1,2,3]: print(x) for x in (1, 2, 3): print(x) 2.文件也可以迭代 f=open('data.txt',encoding='utf8') for line in f: print(line,end='') 3.可迭代的对象支持迭代协议,内部有一个_next_()方法能够获取到下一个元素 f=open('data.txt',encoding='utf8') print(f.__next__()) 4.next()是全局函数,_next()_是属与迭代对象的方法 print(next(f)) 5.readline()是将读取到的所有文件行存到列表,所需内存比迭代器大,效率低,文件是迭代器对象已经自动实现了next,list是可迭代对象,需要用iter print(iter(f) is f)#用来判断是否是迭代器 s=[1,2,3,4] print(iter(s) is s) i=iter(s) print(iter(i) is i) res=[] for x in s: res.append(x**2) print(res) while True: try: x=res.append(next(i)**3) except StopIteration: break print(res) emp={'name':'tom','age':20} for k,v in emp.items(): print(k,v) 6.推导,返回的结果+遍历的过程+过滤的条件 s=[1,3,4,5,6,7] res1=[x for x in s if x%2==0] print(res1) res1=[x+10 for x in s] print(res1) f=['z','c','v'] res=[x.upper() for x in f] print(res) 7.内置的可迭代对象range()用来生成序列,range类型 print(type(range(1,3))) 8。map def d_n(x): return x*2 s=[1,2,3] res=list(map(d_n,s))#将d_n函数的功能应用于s中的每一个元素 print(res)
python第五天迭代
最新推荐文章于 2021-12-07 18:38:48 发布