|
本帖最后由 uitb 于 2018-8-13 10:48 编辑
1、每次num()产生一个新的生成器实例,所以1、2是两个不同的生成器,只是定义方式一样,
2、num是指函数num(生成器定义)定义,而num()同上,是一个生成器的实例了,内存地址肯定不一样
3、1与3、4地址不一样,1、3不一样的原因同上第二条,1、4不同是因为每次num()就是一个新的生成器了,即同上第一条,num()与num()是两个定义方式一样的生成器,内存地址肯定不一样
ps:你上边这些内存地址不同跟是不是生成器没啥关系,换成普通函数估计更好理解
|
|