【发布时间】:2021-08-04 07:45:44
【问题描述】:
在 Perl 中,我可以遍历 csv 文件并自动更新哈希键指向的数组。假设我有一个这样的文件:
foo,1
foo,2
bar,3
baz,2
baz,1
baz,5
然后我可以像这样循环(伪代码):
for ($key,$val in csv file) {
push($hash{$key}, $val)
}
这样我就得到了这样的结构:
$hash = {
foo : [1,2]
bar : [3]
baz : [2, 1, 5]
}
Pythonic 的方法是什么?
【问题讨论】:
-
hash = collections.defaultdict(list)是你想要的,然后你可以做到hash['some_key'].append('somevalue') -
在字典中添加一个不是列表的元素有什么问题吗?例如,“dict['elem'] = 33143”?
-
顾名思义,它只是一个默认值,没有什么能阻止你添加不同类型的值
标签: python dictionary