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

如何将列表中的字典与不同的键合并?

如何将列表中的字典与不同的键合并?

米琪卡哇伊 2022-05-19 15:43:43
我有一个类似的清单[{"username":"example"},{"password":"example2"},{"username":"example3"},{"password":"example4"}]所以我想用不同的键合并对象。它应该看起来像[{"username":"example","password":"example2"},{"username":"example3","password":"example4"}]实际上我不会总是知道钥匙。这个数组是动态创建的。所以代码应该随时工作。例如:当有四个不同的键或三个或六个时。我怎样才能完成这个挑战?谢谢和最好的问候..
查看完整描述

1 回答

?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

不确定这将始终输出正确的输出(您没有提供很多用例),但我相信这将使您走上正确的轨道:


li = [{"username":"example"},{"password":"example2"},

      {"username":"example3"},{"password":"example4"}]


dict_list = []


for d in li:

    if not dict_list:

        dict_list.append(d)

    else:

        for d_ in dict_list:

            if list(d.keys())[0] not in d_:

                d_.update(d)

            else:

                dict_list.append(d)

            break

dict_list那么是


[{'username': 'example', 'password': 'example2'},

 {'username': 'example3'}, {'password': 'example4'}]

即使订单不完美,也可以工作,


li = [{"username":"example"}, {"username":"example3"}, 

      {"password":"example2"}, {"password":"example4"}]

将提供相同的输出


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

添加回答

举报

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