python中yield的认识与学习|生成器

Ivy ·
更新时间:2024-11-14
· 660 次阅读

接触python,yield就有点难度啦、都知道包含这个yield的函数就不是普通函数啦。就是一个生成器函数。

类型:

白话,他跟return的区别就是。他会为用户保留一个断点。return,程序执行一次之后,就会一切重新开始。然而,yield却会在上一次保留一个断点。方便下次使用。

具体,读懂这个简单代码就行啦。

def test1(n): i = 0 while i <= 5: i += 1 print('yield测试 n---' + str(i)) yield i**2 def test2(n): i = 0 while i <= 5: i += 1 return i**2 def main(): n = 0 for n in test1(5): print(n) def tt(): n = 0 while n < 5: n += 1 print('return测试 n---' + str(n)) t = test2(n) print(t) main() print('\n\n\n') tt()

结果:

D:\python_install\python.exe D:/pycharmworkspace/temp1/crawler_1.py yield测试 n---1 1 yield测试 n---2 4 yield测试 n---3 9 yield测试 n---4 16 yield测试 n---5 25 yield测试 n---6 36 return测试 n---1 1 return测试 n---2 1 return测试 n---3 1 return测试 n---4 1 return测试 n---5 1 Process finished with exit code 0

截图:【点击查看】

OK 


作者:dream_uping



生成器 学习 yield Python

需要 登录 后方可回复, 如果你还没有账号请 注册新账号