Python-在循环内创建lambda
发布于 2021-02-02 23:12:28
我试图在迭代对象列表的循环内创建lambda
:
lambdas_list = []
for obj in obj_list:
lambdas_list.append(lambda : obj.some_var)
现在,如果我遍历lambda列表并这样称呼它们:
for f in lambdas_list:
print f()
我得到相同的价值。这是最后的价值obj在obj_list
,因为那是在列表迭代器的块中的最后一个变量。有什么想法可以很好地重写(pythonic)
代码以使其正常工作吗?
关注者
0
被浏览
80