最赞回答 / 机智彪
def count(): fs = [] for i in range(1, 4): def f(): return i*i fs.append(f) return fs f1, f2, f3 = count() print f1(),f2(),f3()返回的这几个函...
2020-02-20
最赞回答 / 芜蘅
注意这段代码:
for i in range(1, 4): def f(): return i*i fs.append(f)我的理解是,这段代码其实是将函数f()依次赋值给fs集合的元素。所以fs集合的元...
2020-02-19
最赞回答 / 慕先生0193543
以下是我个人的理解在执行这句代码时:f1, f2, f3 = count()这个时候进行for循环(range(1,4)产生[1,2,3]),循环结束后i=3,且返回了三个f函数,但没有调用f函数,此时并不进行return i*i这个计算,当执行这句代码时:print f1(), f2(), f3(),i已经是3了
2020-02-19