为了账号安全,请及时绑定邮箱和手机立即绑定

MySQL行列值格式到python字典

MySQL行列值格式到python字典

至尊宝的传说 2022-03-09 21:15:36
我对 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 ...}}


查看完整回答
反对 回复 2022-03-09
  • 1 回答
  • 0 关注
  • 131 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信