Python generator 与 yield 关键字

初次使用 tornado 开发服务器, 也进一步学习使用 Python 这门语言.
开始对 Python 的语法糖 decorator 感兴趣, tornado 的异步事件
处理使用了 tornado.gen.coroutine decorator, 要求代码中异步
执行的代码需要添加 yield 关键字在前面.
于是开始补基础, 使用 yield 这个关键字前需要先了解 Generator:

Python Generators 生成器, 参考自 Generators 文档

首先看简单的代码, 计算一个 100w 长度数组的和:

代码目的很明显, 而这里有个问题是, 100w 的整形数据
在内存中也不够用(假设自己的机器是4G内存).

重新调整下代码:

Continue reading