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 字典和列表_Python_List_Csv_Dictionary_Indexing - Fatal编程技术网

Python 字典和列表

Python 字典和列表,python,list,csv,dictionary,indexing,Python,List,Csv,Dictionary,Indexing,在读取文件时,我将给定的数据转换为键和值的格式。(价值只是一个人的年龄) 例如,如果文件包含数据: 20120101,56years 20120102,45years 20120103,67years 20120104,38years 。。一直到2011年31,21年 我创建了一个字典并将日期作为键(在本例中,让我们假设行1,因此键将是20120101),我将值设置为56年 当我把它打印出来时,每个日期我都有一本单独的字典。 例如: {'20120101': ['56years']} {'20

在读取文件时,我将给定的数据转换为键和值的格式。(价值只是一个人的年龄)

例如,如果文件包含数据:

20120101,56years
20120102,45years
20120103,67years
20120104,38years
。。一直到2011年31,21年

我创建了一个字典并将日期作为键(在本例中,让我们假设行
1
,因此键将是
20120101
),我将值设置为
56年

当我把它打印出来时,每个日期我都有一本单独的字典。 例如:

{'20120101': ['56years']}
{'20120102': ['45years']}
{'20120103': ['67years']}
{'20120104': ['38years']}
因为我看到每个字典都有相同的起始值,比如
201201
, 如何创建一个包含此单键
201201
的字典,并将所有附加值添加到列表中

例如:

{'201201': ['56years', '45years', '67years', '38years'...]}

您可以使用
collections.defaultdict

from collections import defaultdict
d = defaultdict(list)
现在,当您获得密钥
k
和值
v

d[k].append(v)
添加第一个键、值对后,字典可能如下所示:

{'201201' : [56years]}
{'201201' : [56years,45years]}
在读取密钥为“201201”的密钥、值对并将该值添加到
d
后,您的字典将如下所示:

{'201201' : [56years]}
{'201201' : [56years,45years]}

您可以使用
collections.defaultdict

from collections import defaultdict
d = defaultdict(list)
现在,当您获得密钥
k
和值
v

d[k].append(v)
添加第一个键、值对后,字典可能如下所示:

{'201201' : [56years]}
{'201201' : [56years,45years]}
在读取密钥为“201201”的密钥、值对并将该值添加到
d
后,您的字典将如下所示:

{'201201' : [56years]}
{'201201' : [56years,45years]}
可能是这样的?(首先,你需要把所有的口述放入一个列表中,如示例所示):

输出:

{'201201': ['56years', '45years', '67years', '38years'],              
 '201202': ['31years', '32years', '12years']}  
可能是这样的?(首先,你需要把所有的口述放入一个列表中,如示例所示):

输出:

{'201201': ['56years', '45years', '67years', '38years'],              
 '201202': ['31years', '32years', '12years']}