在字典中为一个键附加多个值

匿名:

我是python的新手,我列出了每年的年份和值。我想做的是检查字典中是否已经存在年份,如果存在,则将值附加到特定键的值列表中。

例如,我有一个年份列表,每年都有一个值:

2010  
2  
2009  
4  
1989  
8  
2009  
7  

我想做的是用年作为键填充那些字典,而那些数字作为值填充字典。但是,如果我两次列出了2009,那么我想将该第二个值追加到该词典中的值列表中,因此我想:

2010: 2  
2009: 4, 7  
1989: 8  

现在,我有以下内容:

d = dict()  
years = []  

(get 2 column list of years and values)

for line in list:    
    year = line[0]   
    value = line[1]  

for line in list:  
    if year in d.keys():  
        d[value].append(value)  
    else:  
        d[value] = value  
        d[year] = year  
费萨尔:

如果我可以重新表述您的问题,您想要的是一本以年份为键的字典,以及一个包含每年与该年份相关的值列表的数组,对吗?这是我的处理方式:

years_dict = dict()

for line in list:
    if line[0] in years_dict:
        # append the new number to the existing array at this slot
        years_dict[line[0]].append(line[1])
    else:
        # create a new array in this slot
        years_dict[line[0]] = [line[1]]

您应该在years_dict中最终得到的是一本类似于以下内容的字典:

{
    "2010": [2],
    "2009": [4,7],
    "1989": [8]
}

通常,创建“并行数组”是不好的编程习惯,在这种情况下,项目具有相同的索引而不是包含它们的容器的适当子代,从而使项目彼此隐式关联。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在字典中附加多个值,但在python中避免字典值重复元素

如何在python字典中为每个键添加多个值

在字典中为一个键存储多个值

将多个具有相同键的字典合并到一个包含值总和的字典中

如何将多个列表附加到python字典中的一个键?

如果一个键存在更多值,如何在python字典中为特定值打印键?

python迭代字典值(如果一个键具有一个或多个值)

计算重复的字典,然后附加一个计数键及其值

在字典中为一个键添加具有多个值的列表或字典-Python

在Python中向字典键添加多个值?

如何找到索引,如果在字典中的字典中有一个键的多个值?

如果value与给定字典中的键相等,如何将第一个键的值附加到所述值的键上

在字典中附加一个int键

在字典中查找键/在键中附加多个值时遇到问题(Python)

如何从每个键具有多个值的字典中写入一个csv文件?

hbase为一个键存储多个值

如何在qjsonobject中的一个键中添加多个值

Python从CSV文件在一个字典中添加多个数据点

在python字典中的键中添加多个值

向HashMap中的一个键添加多个值

Python从字典中删除一个值而不是键

对一个字典中的每个键的多个值求和?

在 Python 中迭代一个字典键的多个值

比较基于键的字典并使用缺失的键创建一个新的字典,python3 中的值为 0

如何在 Python 3 的同一个键中附加多个值?

Python3:将一个字典中每个键的多个值除以另一字典中每个键的多个值

字典中一个键的多个值

使用相同的键附加来自另一个字典的字典值

有没有办法将值存储在一个具有多个可选值的字典键中?