我有以下格式的输入数据:
data = [[u'Richard', u'48', [u'Josh', u'Beth'], {u'city': u'Seattle', u'Disability': u'no', u'enterprenuer': u'yes'}], [u'Bryan', u'32',[], {u'city': u'NY', u'enterprenuer': u'no', u'wfh': u'yes', u'disability': u'no', u'Visa': u'no'}]]
以后做json.dumps
会变成:
[["Richard", "48", ["Josh", "Beth"], {"city": "Seattle", "enterprenuer": "yes", "Disability": "no"}], ["Bryan", "32", [], {"Visa": "no", "city": "NY", "wfh": "yes", "enterprenuer": "no", "disability": "no"}]]
另外,我还有另一个清单,上面有dict的键:
key_list = ["Name", "Age", "Children", "details"]
我尝试了以下代码:
list_of_dicts = []
for d in data:
dict = {}
for i in range(0, len(key_list)-1):
dict[key_list[i]] = d[i]
list_of_dicts.append(dict)
有了这个,我可以得到new_dict
:
[{'Age': u'48', 'Name': u'Richard', 'Children': [u'Josh', u'Beth']}, {'Age': u'32', 'Name': u'Bryan', 'Children': []}]
但是我无法将嵌套的dict从data
放到new_dict
中,而无需再次对其运行代码。我不想做多次手术。
另外,我在想是否有更好的方法来删除嵌套列表,但在多次点击和试用后,我得到了旁敲侧击,把我的代码弄乱了。你知道吗
这是预期输出:
[{"Name":"Richard","Age":"48","Children":"Josh,Beth","city":"Seattle","enterprenuer":"yes","Disability":"no"},{"Name":"Bryan","Age":"32","Children":"","Visa":"no","city":"NY","wfh":"yes","enterprenuer":"no","disability":"no"}]
您可以尝试:
1)在Python3中:
输出:
2)在python2中:
输出:
您可以使用简单的解包:
输出:
编辑:Python2.7解决方案:
输出:
印刷品:
相关问题 更多 >
编程相关推荐