关于pyhon3的yield关键字的一点学习

今天参考网上的爬虫代码,发现代码里面用了很多yield关键字,初学python时,只是知道yield使用后返回的是一个迭代器,不怎么理解;几天查阅了一些资料,也在IDE上写了些测试代码,感觉自己是对yield的理解更进了一步。
这里写图片描述
这张图说明yield只能用于函数内;
这里写图片描述
这张图对于我个人而言,感觉很能代表yield的含义;在函数里面使用yield就类似于使用return,只是会有三个区别点——1、返回的是一个迭代器,用迭代器的next函数,会返回迭代器的下一个值;2、下次执行会直接跳到yield,就像在这个地方设置了一个断点;3、如果有多个yield,会先迭代完一个,顺序迭代下一个,就是递归一样。

猜你喜欢

转载自blog.csdn.net/Asunqingwen/article/details/78399538