楼主:
spong (请输入ID)
2019-07-29 08:34:29我想请问关于python闭包的语法该怎么理解
范例如下
def outer():
b = 10
def inner(x):
return 5 * x + b
return inner
b = 2
f = outer()
print(f(b))
为什么最后答案会是20
完全不了解,整个程式的流程
作者:
IAMPF (PF)
2019-07-29 08:42:00耶... 我这边跑16耶
作者:
os653 2019-07-29 08:45:00你写错答案了吧?直觉想法是f=inner,所以跑出5*2+6=16?
你return inner就是return inner那个method阿...
作者:
germun (ger)
2019-07-29 15:56:00我猜你根本板书抄错了 应该是5*x+b 然后函式都少了参数
作者: windclara (null) 2019-07-29 22:29:00
f=outer 应该要有参数吧
作者:
s860134 (s860134)
2019-07-30 21:09:00f = outer() 下一行你加个 print(f),这个输出结果你懂吗如果你不懂 f 为什么是那个结果 那你其他都不会懂