generator 创建列表时,用[v for v in xxx] 把方括号改成圆括号,就创建了一个生成器(v for v in xxx) 生成器的类型为generator 打印创建的生成器,只会显示内存地址, 因为生成器其实只是生成了一个算法,具体数据,要调用的时候才能计算生成,一步一步计算 而列表的创建,则是直接生成了一个列表,数据都是计算完的,占用了内存 可迭代循环,类似列表 iter() 转化为迭代器 next() 获得generator的下一个返回值 yield 作用类似return 返回一个值,但是会保留当前函数进程,在next()时,继续进行至下一个yield