使用 for 循环,以下 python 代码可以工作。
for item in results:
item ['currentservertime'] = int(time.time())
但是,我想通过列表理解来做到这一点。所以我尝试了以下方法,但在 = 上出现语法错误
item['currentservertime'] = int(time.time()) for item in results
我哪里错了?
使用 for 循环,以下 python 代码可以工作。
for item in results:
item ['currentservertime'] = int(time.time())
但是,我想通过列表理解来做到这一点。所以我尝试了以下方法,但在 = 上出现语法错误
item['currentservertime'] = int(time.time()) for item in results
我哪里错了?
列表理解在这里不起作用,因为您在任何时候都没有构建列表 - 您正在更改各种字典中的值。如果您的原始代码具有以下形式,则列表理解将是正确的工具:
currentservertime = []
for item in results:
currentservertime.append(int(time.time())
这将转化为列表理解:
currentservertime = [int(time.time()) for item in results]
就目前而言,您现有的循环是实现您正在做的事情的最清晰和最直接的方式。
[i.update({'currentservertime': int(time.time())}) for i in results]