python学习笔记第九节(迭代器,生成器,三元表达式)

for循环相当于自动调动__iter__

for循环相当于上面这样每次__next__再打印一次

while循环的迭代方式,采用try的方式

判断是否为可迭代

判断是否为迭代器对象

加了蓝色段,可以调用原来的函数名

迭代对象 可以__iter__的
迭代器 将__iter__之后的结果的
迭代器对象 可以直接__next__的

生成器

迭代到yield后停止,相当于__next__
函数加上yield后就是迭代器。
可以每次__next__显示,每次显示到yield后停止,相当于return,但是下次__next__可以继续
可以迭代操作
for i in g:
然后yield相当于return
将print和yield返回的数字显示出来

用生成器实现tail -f |grep 'errror'

上面更改后起到了tail -f |grep 'error'|grep '404'的效果
通过更改grep函数 将print改为yield 起到了|的效果,后面的grep不用重新写,直接再次赋值调用即可

三元表达式

列表解析

原文地址:https://www.cnblogs.com/ArmoredTitan/p/7048748.html