python yield
搞来搞去又搞回来了。。。
可以参考一下:https://www.runoob.com/w3cnote/python-yield-used-analysis.html
def main(seq): n = len(seq) for i in range(n): yield seq[i], seq[(i+1)%n] print('已经执行完yeild') if __name__ == '__main__': for i in main('abdsaf'): print(i)
yield 的作用就是把一个函数变成一个 generator,带有 yield 的函数不再是一个普通函数,Python 解释器会将其视为一个 generator,调用main()不会执行 main 函数,而是返回一个 iterable 对象!在 for 循环执行时,每次循环都会执行 main 函数内部的代码,执行到 yield 时,main 函数就返回一个迭代值,下次迭代时,代码从 yield b 的下一条语句继续执行,而函数的本地变量看起来和上次中断执行前是完全一样的,于是函数继续执行,直到再次遇到 yield,节约内存空间。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现