如何将数组中的键的值添加到字典中?

如何将数组中的键的值添加到字典中?

问题描述:

大家好,我的字典是这样看如何将数组中的键的值添加到字典中?

{'A': [3, 4, 7], 'B': [4, 9, 9], 'C': [3, 4, 5], 'D': [2, 2, 6], 'E': [6, 7, 9], 'F': [2, 4, 5]}

我怎么会在阵列(数字)增加值(他们已经是整数形式),因此它会写在阵列中的总。在此之后,我将如何对词典进行排序,以便最低的总数首先进入?

我需要对它进行排序,因为用户将输入数据进入这些数组。

+0

请让代码尽可能简单,因为我是初学者,谢谢。 – somebrick

+5

这不是一个免费的代码写入服务。请[see here](http://stackoverflow.com/help/how-to-ask)学习如何编写有效的问题。 – vaultah

+0

@somebrick如果你自己尝试一下,不能做对,在你尝试过的问题中展示,这里的人会尝试并帮助你。 – Vinny

综上所述值,你可以遍历使用.items()数据,将与其相关的值在每次迭代返回键:

s = {'A': [3, 4, 7], 'B': [4, 9, 9], 'C': [3, 4, 5], 'D': [2, 2, 6], 'E': [6, 7, 9], 'F': [2, 4, 5]} 
new_dict = {} 
for a, b in s.items(): 
    new_dict[a] = sum(b) #here, using sum function to get the total of all elements 

字典是无序,但是,你可以保持数据在这格式:

final_data = sorted(new_dict.items(), key=lambda x:x[-1]) 
final_output = final_data[2:] 
print(final_output) 
+0

如果不使用导入函数,我怎么才能根据数组中的总数从字典中提取键+值? – somebrick

+0

@somebrick请看我最近的编辑。 – Ajax1234

+0

works @ Ajax1234,我将怎样dict.pop字典中的第一个和第二个索引? – somebrick

这是你想要的,下面的解释:

#!/usr/bin/env python3.6 


def main(): 
    nums = {'A': [3, 4, 7], 'B': [4, 9, 9], 'C': [3, 4, 5], 'D': [2, 2, 6], 'E': [6, 7, 9], 'F': [2, 4, 5]} 

    for key in nums.keys(): 
     nums[key] = sum(nums[key]) 

    print(nums) 


if __name__ == "__main__": 
    main() 

所以我们在这里做的是循环你的字典中的键,然后重新分配该键等于它的元素的总和。你不能排序字典,所以这里不涉及排序。无论如何,你为什么需要它?

+0

请参阅编辑后的文章,抱歉模糊的值将被输入,所以你不能使用if语句 – somebrick