Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:如果key的值在同一个字典中存在多次,则将其合并_Python_List_Dictionary_Key - Fatal编程技术网

Python:如果key的值在同一个字典中存在多次,则将其合并

Python:如果key的值在同一个字典中存在多次,则将其合并,python,list,dictionary,key,Python,List,Dictionary,Key,我正在使用python,并且我正在尝试获取键的值,如果它在字典中存在不止一次。我有一个由多个字典组成的元组,如下所示 d= ({'object': 0.407, '2008': 0.325, 'concept': 0.449, 'c#': 0.222, '.net': 0.21, 'oriented': 0.41, '2012': 0.369, 'asp.net': 0.234, 'sql_server': 0.274}, {'microsoft_kinect_sdk_1.8': 1.0}, {

我正在使用python,并且我正在尝试获取键的值,如果它在字典中存在不止一次。我有一个由多个字典组成的元组,如下所示

d= ({'object': 0.407, '2008': 0.325, 'concept': 0.449, 'c#': 0.222, '.net': 0.21, 'oriented': 0.41, '2012': 0.369, 'asp.net': 0.234, 'sql_server': 0.274}, {'microsoft_kinect_sdk_1.8': 1.0}, {'sql': 0.268, 'ado.net': 0.447, 'c#': 0.468, 'asp.net': 0.494, 'c++': 0.346, 'sql_server': 0.289, 'java': 0.248}, {'.net': 1.0}, {'sql_serverâ': 0.766, 'c#': 0.282, 'asp': 0.513, '.net': 0.267}, {'jquery': 0.201, 'vb': 0.49, 'prototype': 0.481, 'c#': 0.214, '.net': 0.203, 'css': 0.199, 'javascript': 0.357, 'html': 0.204, 'object-oriented': 0.376, 'java': 0.227}, {'javascript': 0.163, 'android': 0.216, 'java_ee': 0.38, 'liferay': 0.86, 'java': 0.207}, {'j2ee': 1.0}, {'javascript': 1.0}, {'android': 1.0}, {'ios': 1.0}, {'ruby': 0.432, 'rails': 0.424, 'asp.net': 0.254, 'css': 0.223, 'fphp': 0.654, 'javascript': 0.2, 'html': 0.228})
我想要这样的结果

updated_d= {'ios': 1.0, 'concept': 0.449, 'sql_server': 0.766, '2012': 0.369, '.net':[0.21,1.0,0.267,0.203,0.254], 'microsoft_kinect_sdk_1.8': 1.0, 'sql': 0.268, 'css': 0.223, 'ado.net': 0.447, 'asp.net':[0.234,0.494.0.254], 'oriented': 0.41, 'c++': 0.346, 'html': 0.228, 'j2ee': 1.0, 'object-oriented': 0.376, 'jquery': 0.201, 'vb': 0.49, 'rails': 0.424, 'c#': 0.214, 'ruby': 0.432, 'android': 1.0, 'java_ee': 0.38, 'sql_server': 0.289, 'java': 0.207, 'object': 0.407, '2008': 0.325, 'asp': 0.513, 'fphp': 0.654, 'javascript': 0.2, 'liferay': 0.86, 'prototype': 0.481}
提前谢谢。

我想下面的代码将对您有所帮助:
如果您不希望列表对象作为单个值元素,例如
对象:[0.407]
,那么您可以在进一步处理时将其转换为字符串。

您的意思是,如果它在不同的口述中多次出现,您想合并它吗?请说明您解决此问题的尝试。谢谢,这段代码给出了我想要的精确输出。
aa = ({'object': 0.407, '2008': 0.325, 'concept': 0.449, 'c#': 0.222, '.net': 0.21, 'oriented': 0.41, '2012': 0.369, 'asp.net': 0.234, 'sql_server': 0.274}, {'microsoft_kinect_sdk_1.8': 1.0}, {'sql': 0.268, 'ado.net': 0.447, 'c#': 0.468, 'asp.net': 0.494, 'c++': 0.346, 'sql_server': 0.289, 'java': 0.248}, {'.net': 1.0}, {'sql_serverâ': 0.766, 'c#': 0.282, 'asp': 0.513, '.net': 0.267}, {'jquery': 0.201, 'vb': 0.49, 'prototype': 0.481, 'c#': 0.214, '.net': 0.203, 'css': 0.199, 'javascript': 0.357, 'html': 0.204, 'object-oriented': 0.376, 'java': 0.227}, {'javascript': 0.163, 'android': 0.216, 'java_ee': 0.38, 'liferay': 0.86, 'java': 0.207}, {'j2ee': 1.0}, {'javascript': 1.0}, {'android': 1.0}, {'ios': 1.0}, {'ruby': 0.432, 'rails': 0.424, 'asp.net': 0.254, 'css': 0.223, 'fphp': 0.654, 'javascript': 0.2, 'html': 0.228})

bb = {}
for i in aa:
    for k, v in i.items():
        bb.setdefault(k, []).append(v)

print (bb)


#output
{'object': [0.407], '2008': [0.325], 'concept': [0.449], 'c#': [0.222, 0.468, 0.282, 0.214], '.net': [0.21, 1.0, 0.267, 0.203], 'oriented': [0.41], '2012': [0.369], 'asp.net': [0.234, 0.494, 0.254], 'sql_server': [0.274, 0.289], 'microsoft_kinect_sdk_1.8': [1.0], 'sql': [0.268], 'ado.net': [0.447], 'c++': [0.346], 'java': [0.248, 0.227, 0.207], 'sql_serverâ': [0.766], 'asp': [0.513], 'jquery': [0.201], 'vb': [0.49], 'prototype': [0.481], 'css': [0.199, 0.223], 'javascript': [0.357, 0.163, 1.0, 0.2], 'html': [0.204, 0.228], 'object-oriented': [0.376], 'android': [0.216, 1.0], 'java_ee': [0.38], 'liferay': [0.86], 'j2ee': [1.0], 'ios': [1.0], 'ruby': [0.432], 'rails': [0.424], 'fphp': [0.654]}