gpt4 book ai didi

Python求和excel文件

转载 作者:行者123 更新时间:2023-11-28 21:27:24 25 4
gpt4 key购买 nike

我有一个包含 3 列的 excel 文件。
请举例如下

Name      Produce     Number
Adam oranges 6
bob Apples 5
Adam Apples 4
steve Peppers 7
bob Peppers 16
Adam oranges 5

我需要以这种方式在 python 中生成总和

Name      Produce     Number
Adam oranges 11
bob apples 5
steve peppers 7
etc

我是 python 的新手,想弄清楚如何写出每个人的总计输出?有没有一种简单的方法可以从 Excel 中收集这些数据?

最佳答案

代码如下:

如果您有任何问题(或者如果我有任何错误),请务必查看评论并返回此处

import csv

file = open('names.csv', "rb") #Open CSV File in Read Mode
reader = csv.reader(file) #Create reader object which iterates over lines

class Object: #Object to store unique data
def __init__(self, name, produce, amount):
self.name = name
self.produce = produce
self.amount = amount

rownum = 0 #Row Number currently iterating over
list = [] #List to store objects

def checkList(name, produce, amount):

for object in list: #Iterate through list
if object.name == name and object.produce == produce: #Check if name and produce combination exists
object.amount += int(amount) #If it does add to amount variable and break out
return

newObject = Object(name, produce, int(amount)) #Create a new object with new name, produce, and amount
list.append(newObject) #Add to list and break out


for row in reader: #Iterate through all the rows
if rownum == 0: #Store header row seperately to not get confused
header = row
else:
name = row[0] #Store name
produce = row[1] #Store produce
amount = row[2] #Store amount

if len(list) == 0: #Default case if list = 0
newObject = Object(name, produce, int(amount))
list.append(newObject)
else: #If not...
checkList(name, produce, amount)


rownum += 1

for each in list: #Print out result
print each.name, each.produce, each.amount

file.close() #Close file

关于Python求和excel文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11005335/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com