⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

Python 生成器 yield

惰性计算/无限序列/生成器表达式/send · 难度:入门 · +20XP

Python 生成器 —— 按需产出的数据流

普通函数一次性返回所有结果。生成器(Generator)用yield逐个产出数据,每次只在内存中保存当前值——处理大数据的神器。

基本用法

def million_numbers():
    for i in range(1000000):
        yield i  # 逐个产出,不占内存

squares = (x**2 for x in range(1000000)) # 生成器表达式 next(squares) # 0 next(squares) # 1

动手练习

  1. 基础练习:用生成器写一个无限斐波那契数列。
  2. 进阶应用:用生成器逐行读取超大文件,逐行处理不爆内存。
  3. 项目实战:把项目中返回大列表的函数改为生成器。

学习提示:每学完一个知识点,建议在Python交互环境中动手验证。编程不是看会的,是写会的。打开你的终端输入python开始练习吧!遇到问题善用官方文档 docs.python.org。坚持每天写代码,三个月后你会看到巨大的进步。

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 152 篇
0 完成
🔥 0