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—不要一直重新创建它—不,不是数据的屏幕截图,而是实际数据。