Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 打印出csv文件的计数器_Python_Python 3.x_Csv_Counter - Fatal编程技术网

Python 打印出csv文件的计数器

Python 打印出csv文件的计数器,python,python-3.x,csv,counter,Python,Python 3.x,Csv,Counter,请说明为什么未达到预期产出 with open('data2.csv','r') as data: reader = csv.DictReader(data) for line in reader: x = Counter(line['Programminglanguages'].split(',')) print(x) 输出: Counter({'C++': 1}) 预期产出: Counter({'Java': 2, 'C++': 2, 'Python': 1}) 文件

请说明为什么未达到预期产出

with open('data2.csv','r') as data:
  reader = csv.DictReader(data)
  for line in reader:
    x = Counter(line['Programminglanguages'].split(','))

print(x)
输出:

Counter({'C++': 1})
预期产出:

Counter({'Java': 2, 'C++': 2, 'Python': 1})
文件数据2的内容:


你应该使用这样的代码

import csv
from collections import Counter


with open('data2.csv') as data:
    reader = csv.DictReader(data, delimiter=';')
    programming_languages = []
    for line in reader:
        programming_languages.extend(line['Programminglanguages'].split(','))
    print(Counter(programming_languages))

你能提供一个小的测试片段吗?不知道怎么做。你能指导吗?例如,当x的输出是计数器{'C++':1}时,行的内容是什么?你在循环中创建了新的x-只有最后一个存在。-在循环外部创建x—在循环内部添加x—不要一直重新创建它—不,不是数据的屏幕截图,而是实际数据。