防止DictReader添加引号

时间:2016-07-28 09:31:15

标签: python

我想将csv转换为python dict。 键是字符串,但值不是。

 VERTICAL;"AAA";"BBB";"CCC"
 "one";1;None;3
 two";11;22;{"t":"type","v":"value"}
 three";111;222;333

无论我用于引用和quotechar,DictReader都会添加引号。

reader = csv.DictReader(open('matrix_test.csv'), delimiter=";")
for row in reader:
    component_type = row["VERTICAL"]
    row.pop("VERTICAL")
    matrix.update({component_type: row})

这就是我得到的:

{'"one"': {'"AAA"': '1', '"BBB"': 'None', '"CCC"': '3'},
 '"three"': {'"AAA"': '111', '"BBB"': '222', '"CCC"': '333'},
 '"two"': {'"AAA"': '11', '"BBB"': '22', '"CCC"': '{"t":"type","v":"value"}'}}

但是我不希望数字,dicts和None周围的引号。 我只想在那里将它们放在csv中。

0 个答案:

没有答案