使用for循环,以下python代码可以正常工作。
for item in results:
item ['currentservertime'] = int(time.time())
我想用列表理解来做到这一点。所以我尝试了以下内容,但是我在=
上遇到语法错误item['currentservertime'] = int(time.time()) for item in results
我哪里错了?
答案 0 :(得分:10)
列表理解在这里不起作用,因为你不是在任何时候建立一个列表 - 你正在改变各种词典中的值。如果您的原始代码具有以下形式,则列表理解将是正确的工具:
currentservertime = []
for item in results:
currentservertime.append(int(time.time())
这将转化为列表理解:
currentservertime = [int(time.time()) for item in results]
目前,您现有的循环是实现您正在做的事情的最清晰,最直接的方式。
答案 1 :(得分:0)
[i.update({'currentservertime': int(time.time())}) for i in results]