n等于1时:
执行完base = (add(i, n) for i in base)
后base是:
i+n for i in [0,1,2,3]
接下来n=10:
base变为i+n for i in (i+n for i in [0,1,2,3])
此时n等于10,再去计算base, base一直是个生成器。
其中print list(base) 是对生成器进行迭代,此时n是按照10来计算。
python 迭代器
原文:http://blog.51cto.com/11736068/2088499