课程
/后端开发
/Python
/python进阶
count()返回的是一个含有三个函数的list,这点我懂 有一点不懂,不可以f1=[a,b,c](即f1=count())的形式吗?为什么一定要f1,f2,f3=[a,b,c](即f1,f2,f3= count())?
2015-05-17
源自:python进阶 2-9
正在回答
可以的,但是前面代码要改一下:
def count():
fs = []
for i in range(1, 4):
def f(j):
return j*j
r = f(i)
fs.append(r)
return fs
这样最后你输入print f1,结果就是[1,4,9]
用f1,f2,f3= count()是因为用了闭包,f1(),f2(),f3()其实就是分别当j为1,2,3时的g()
举报
学习函数式、模块和面向对象编程,掌握Python高级程序设计