In [19]: def exfun(): ...: funli = [] ...: for i in range(3): ...: def intfun...就是生成了一个list,里面的3个元素,元素类型是intfun()函数,它是一个闭包,引用了外部变量i 下面,我们调用函数: In [20]: funli = exfun...我们可以在生成闭包函数的时候,立即绑定变量 i,如下: In [32]: def exfun(): ...: funli = [] ...: for i in range...这是带陷阱的版本 In [38]: def exfun(): ...: return [lambda x: i*x for i in range(3)] 这是OK版本: In [38]:...def exfun(): ...: return [lambda x,i=i: i*x for i in range(3)]
.); int _EXFUN(printf, (const char *__restrict, ...)
领取专属 10元无门槛券
手把手带您无忧上云