以第一列作为键读取两列CSV作为dict

发布于 2021-01-29 15:04:35

我有一个包含两列的CSV,第一列是致力于我们项目中特定建筑物的团队。

第二列是实际建筑物编号。

我正在寻找的是一本字典,其中第一列为关键字,列表中属于该团队的建筑物。

我尝试了各种形式的csv.readercsv.DictReader以及不同的for循环将数据重写到另一个字典中,但是我无法获得所需的结构。

CSV:

team,bldg,
3,204,
3,250,
3,1437,
2,1440,
1,1450,

字典的结构如下:

dict["1"] = ["1450"]
dict["2"] = ["1440"]
dict["3"] = ["204", "250", "1437"]
关注者
0
被浏览
71
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    这有效:

    import csv
    
    result={}
    with open('/tmp/test.csv','r') as f:
        red=csv.DictReader(f)
        for d in red:
            result.setdefault(d['team'],[]).append(d['bldg'])
    
    #results={'1': ['1450'], '3': ['204', '250', '1437'], '2': ['1440']}
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看