我正在尝试使用Python在csvfile中编写一些数据。我有一份欧洲歌唱大赛的国家和结果清单,看起来是这样的:
Country,Points,Year
Belgium;181;2016
Netherlands;153;2016
Australia;511;2016
Belgium;217;2015
Australia;196;2015
等等。你知道吗
总的来说,我想把所有国家在过去几年里得到的分数加起来,所以输出应该是这样的: “比利时:398”,“荷兰:153”,“澳大利亚:707”等等。你知道吗
我的代码是这样的:
import csv
with open('euro20042016.csv', 'r') as csvfile:
pointsallyears = []
countriesallyears = []
readFILE = csv.reader(csvfile, delimiter=';')
for row in readFILE:
countriesallyears.append(row[0])
pointsallyears.append(row[1])
csvfile.close()
results = []
for result in pointsallyears:
result = int(result)
results.append(result)
scorebord = zip(countriesallyears,results)
所以我已经确定结果/点是实际整数,并且我过滤掉了第三行(年份),但是我不知道如何从这里开始。提前多谢了!你知道吗
把@Mikk的评论变成一个实际的答案。除了
import
之外的两行您需要做的唯一额外的事情是将文件的第一行改为用
;
而不是,
分隔。你知道吗我决定玩弄一下你的代码,这就是我想到的。这里,
row[0]
包含国家名称,row[1]
包含我们需要的值。我们检查这个国家是否已经存在于我们用来维护聚合的字典中,如果它不存在,我们就创建它。你知道吗我得到的输出是
我相信这就是你的目标。你知道吗
如果你在理解任何东西时遇到问题,请在评论中告诉我。你知道吗
我稍微修改了你的代码,用字典和国家名称作为键。结果字典d将国家名称作为关键字,值是总分。你知道吗
相关问题 更多 >
编程相关推荐