0
我从CSV导入数据并将其置于嵌套字典中。 我现在的重点检查看起来是这样的:循环创建嵌套字典
data = {}
[...]
if day not in data:
data[day] = {}
if hour not in data[day]:
data[day][hour] = {}
if user in data[day][hour]:
worked_time += (
data[day][hour][user]['worked_time']
)
data[day][hour][user] = {
'name': users[user]['name'],
'worked_time': worked_time
}
它们可以是几个用户为各data[day][hour]
在想,如果有检查是否存在每个key
不是用几个ifs
更好的办法。
我不认为'name':[users] [user] ['name'],'是有效的Python语法。但'collections.defaultdict'或'dict.setdefault'可能是替代这些'if xxx not in yyy'语句的好选择。 – MSeifert
这应该回答你的问题:https://stackoverflow.com/questions/19189274/defaultdict-of-defaultdict-nested#19189356 –
你是对的先生,这是我的拼写错误,应该是'users [user] ['name] '。将检查链接的答案,谢谢。 – Pythonist