【发布时间】:2013-11-25 18:26:53
【问题描述】:
所以我有一些格式如下的 csv 文件:
person,age,nationality,language
Jack,18,Canadian,English
Rahul,25,Indian,Hindi
Mark,50,American,English
Kyou, 21, Japanese, English
我需要导入它,并将该数据作为字典返回,键作为第一行的列标题,每列中的所有数据作为该特定键的值。例如:
dict = {
'person': ['Jack', 'Rahul', 'Mark', 'Kyou'],
'age': [18, 25, 50, 21],
'nationality': ['Canadian', 'Indian', 'American', 'Japanese'],
'language': ['English', 'Hindi', 'English', 'English']
}
知道我将如何开始这段代码并使其适用于 .csv 文件中给定的任意数量的列吗?
【问题讨论】:
-
看看
csv模块。特别是DictReader。它应该允许您获得[{'person': 'jack', 'age': '18', ...}, ...]。从那里可以得到你想要的东西。 -
csv模块可让您将其转换为list的dicts。 -
我需要将结果输出为字典,而不是列表。
-
不完全重复 - 相关,但该问题希望使用列值作为键,而该问题希望使用标题作为键。
-
不完全重复,我需要使用第一行作为键,而不是该问题中的第一列
标签: python dictionary import-from-csv