GLH*_*LHF 0 python lambda python-3.5
我有一些问题需要理解lambda.我的观点是1在lambda中添加一个变量直到某个点.例;
x = 0
t = lambda y: y+1
while True:
print ("Hello")
t(x)
if x==5: break
Run Code Online (Sandbox Code Playgroud)
我以为它会在5次后停止,但我意识到lambda只加1次.而这个while循环是无限的.这是为什么?为什么lambda在循环完成之前不会向该变量添加1 x += 1?
olo*_*fom 10
您需要将输出分配t给x.你现在做的就像做:
def t(y):
return y+1
x = 0
t(x)
Run Code Online (Sandbox Code Playgroud)
代替
x = t(x)
Run Code Online (Sandbox Code Playgroud)
你需要这样做:
x = 0
t = lambda y: y+1
while True:
print ("Hello")
x = t(x)
if x==5: break
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
128 次 |
| 最近记录: |