def myfunc(z):
return lambda x:x+1
t=myfunc(1)
print(t(2))
#I 在理解此代码中的数据流时遇到问题。
简化说明:
您的定义:
def myfunc(z):
return lambda x:x+1
t=myfunc(1)
print(t(2))
与(因为您在任何地方都不使用 z)相同:
def myfunc():
return lambda x:x+1
t=myfunc()
print(t(2))
相当于:
t = lambda x:x+1
print(t(2))
相当于:
def t(x):
return x+1
print(t(2))
它的作用是,您将myfunc
的结果分配给变量t
,这是一个 lambda(另一个函数定义)
然后执行t
,参数x
设置为 2 计算结果为 2+1 并返回 3