尝试使用python列表理解中的if / then语句更新/添加到JSON元素。我设置JSON密钥“ first_seen”的第一部分失败。有什么想法吗?
undefined
错误是:
now = datetime.datetime.now().strftime("%B, %d, %Y")
[obj["last_seen"] = now for obj in ref_db if obj['user']==user else add_new(user, ext_source, source, first_seen, now)]
我从错误中了解到我的语法是错误的,但是我不知道为什么它是错误的。您不能在列表理解中使用等号(=)吗?
感谢您的帮助。
答案 0 :(得分:3)
列表推导用于创建列表。您只想使用一个for循环:
now = datetime.datetime.now().strftime("%B, %d, %Y")
for obj in ref_db:
if obj['user'] == user:
obj["last_seen"] = now
else:
add_new(user, ext_source, source, first_seen, now)