我对 Python(和 Django)比较陌生,并且在 MySQL 数据库中有一些行列值格式的数据Django 模型“用户参数”:user_id | param | value-----------------------------------123 | param_1 | xxx123 | param_2 | yyy123 | param_3 | zzz123 | param_4 | aaa123 | param_5 | bbb123 | param_6 | xxx......456 | param_1 | sse456 | param_2 | aca456 | param_3 | cce456 | param_4 | dwe456 | param_5 | cck456 | param_6 | aq1......789 | param_1 | zzz...我正在尝试将 MySQL 中的这些数据按以下格式放入字典中:users = { 123: {'param_1': 'xxx', 'param_2': 'yyy', 'param_3': 'zzz', 'param_4': 'aaa', 'param_5': 'bbb', 'param_6': 'xxx'}, 456: {'param_1': 'sse', 'param_2': 'aca', 'param_3': 'cce', 'param_4': 'dwe', 'param_5': 'cck', 'param_6': 'aq1'}, 789: {'param_1': 'zzz', .....}到目前为止,我已经尝试过users = {}users_params = UserParameters.objects.all().values()for u in users_params: users[u['user_id']].add(u['param'], u['value'])这给了我一个关键错误。知道我做错了什么吗?
1 回答
跃然一笑
TA贡献1826条经验 获得超6个赞
对于我认为您正在尝试完成的事情(听起来像嵌套字典或字典字典),您可以尝试以下操作:
for u in users_params:
user_id = u['user_id']
if user_id not in users:
users[user_id] = {}
users[user_id][u['param']] = u['value']
# For users with key pairs like
# {5063: {'wk1_d2_survey_1': 768, 'wk3_d1_survey_2': 781 ...}}
添加回答
举报
0/150
提交
取消