我有一个这样的 csv 数据集:
A, 10, USA
B,30, UK
C,4,IT
A,20,UK
B,10,USA
我想阅读这个 csv 行并提供以下输出:
A has ran 30 miles with average of 15.
B has ran 30 miles with average of 20.
C has ran 4 miles with average of 4.
到目前为止,我的解决方案是读取 csv 数据并将它们转换为字典,然后对其进行迭代以查看“A”重复了多少次,以及它必须为平均值计算哪些值并最终产生结果。我已经编写了这段代码,但是我很难有效地计算 A 被重复的次数并将里程加起来以创建我的最终输出。有什么想法可以在 Python 中做到这一点吗?在 C# 中做这件事对我来说有点容易,但我对 Python 不是那么好。
def main(filename):
f = open(filename,'r')
labels = ['name','miles','country']
data = csv.DictReader(f,labels,delimiter=',')
for line in data:
print (line['name']+" " + "has ran" +" "+ line['miles']+" "+"miles")
f.close()