我可以使用python中的lambda
函数或更具python风格的表达式来实现计数器吗?
下面是我的代码:
counter = 0
if 0 < arrival_time:
counter += 1
else:
pass
这是我尝试过的:
count_late = lambda x, arrival_time: x+=1 if 0 < arrival_time else pass
counter_late(counter, arrival_time)
错误:
我遗漏了什么,或者我如何改进这段代码?
发布于 2018-07-03 08:30:24
如果你有一个函数counter_late():
**
#the 'counter' is in counter_late() or global
counter_late((lambda arrival_time: counter+1 if 0 < arrival_time else PASS), 10)
**
否则:
**
counter = 0 #global variable
counter = (lambda arrival_time: counter+1 if 0 < arrival_time else PASS)(10)
#check the value of counter
print('conter=',counter)
**
10是您想要的arrival_time值所需的变量。
如果你得到一个语法错误。
PASS是改变其他值,你想要一个数字或条件。
例如)
计数器=(λarrival_time: counter+1 if 0< arrival_time else 1)(0)
https://stackoverflow.com/questions/51145069
复制相似问题