弱弱的问一句,老师的这段代码为什么要多一个g(),直接return j*j不可以吗?
def count(): def f(j): def g(): return j*j return g fs = [] for i in range(1, 4): fs.append(f(i)) # f(i)立刻被执行,因此i的当前值被传入f() return fs
一个返回的是函数,一个返回的是值 写成j*j的话 要改成下面的使用方法
f1, f2, f3 = count() f1 1 f2 4 f3 9
一个返回的是函数,一个返回的是值 写成j*j的话 要改成下面的使用方法,不用() f1, f2, f3 = count() f1 1 f2 4 f3 9
感谢@Wanccao的回答,明白了
Sign in to make a reply
潘神就是我
弱弱的问一句,老师的这段代码为什么要多一个g(),直接return j*j不可以吗?
def count(): def f(j): def g(): return j*j return g fs = [] for i in range(1, 4): fs.append(f(i)) # f(i)立刻被执行,因此i的当前值被传入f() return fs