Python 中的 生成器 (Generator) 是一种特殊的迭代器(Iterator)。 简单来说,生成器允许你一边循环一边计算,而不是一次性把所有结果计算出来存入内存。这使得它在处理大量数据或无限数据流时非常高效。 以下是关于生成器的详细解析: --- 1. 核心概念:为什么要用生成器? 假设你要处理 1 亿个数字。 列表 (List):会一次性创建 1 亿个数字并存入内存,占用极大内存,甚至导致程序崩溃。 生成器 (Generator):它不会一次性生成所有数字,而是保存算法。每次你需要一个数字时,它才计算一个给你。几乎不占内存。 这种机制被称为 惰性求值 (Lazy Evaluation)。 --- 2. 如何创建生成器 有两种主要方式来创建生成器: 方法一:生成器表达式 (Generator Expression) 只要把列表推导式(List Comprehension)的 换成 ,就变成了生成器。 方法二:生成器函数 (使用 关键字) 如果一个函数中包含了 关键字,那么这个函数就不再是一个普通函数,而是一个生成器函数。 和 的区别: :返回结果并结束函数。 :返回结...