从csv文件创建一个字典?

时间:2015-05-18 13:36:52

标签: python csv dictionary

我想在python中执行以下操作.csv文件是:

 item1,item2,item2,item3
 item2,item3,item4,item1

我想创建一个包含唯一键item1,item2,item3和item4的字典。 dictionary = {item1:value1,item2:value2 ....}。值是密钥在csv文件中出现的次数。我该怎么办?

3 个答案:

答案 0 :(得分:1)

cvs获取所有项目的列表:

with open('your.csv') as csv:
    content = csv.readlines()
    items = ','.join(content).split(',')

然后开始映射

mapping = {}
for item in items:
    mapping[item] = (mapping.get(item) or 0) + 1

您将得到以下信息:

>>> mapping
{'item2': 3, 'item3': 2, 'item1': 2, 'item4': 1}

答案 1 :(得分:1)

答案 2 :(得分:0)

  import csv

  temp = dict()
  with open('stackoverflow.csv', 'rb') as f:
      reader = csv.reader(f)
      for row in reader:
          for x in row:
              if x in temp.keys():
                  temp[x] = int(temp[x]) + 1
              else:
                 temp[x] = 1
  print temp

输出如下: -

{'item2': 3, 'item3': 2, 'item1': 2, 'item4': 1}