当我对数据库进行查询时,返回如下值:
tuplematches = cursor.fetchall()
for items in tuplematches:
print(items)
打印为:
NAME/ PRICE/ HOURS/
1. ('honda accord 2nd light', 20.00, 10.0)
2. ('honda accord 2nd light', 22.00, 17.0)
3. ('chevy silverado headlight', 30.00, 20.0)
我想要的是创建一个字典,其中键是项的名称, 该值是一个列表,其中包括具有此名称的项目的所有价格的总和,以及该名称出现的小时数和次数的总和。对于每个单独的名称:
mydict[name] = [summed price, summed hours, occurences]
mydict['honda accord 2nd light'] = [42.00, 27.0, 2]
我尝试了几种不同的方法,但我不明白为什么,它没有给我不重复的名字作为键,它的所有组合值,它给了我一个字典,有多个不同的实例相同的名字和他们自己的不同值,这对我没有好处。像这样:
mydict['honda accord 2nd light'] = [21.00, 13.5, 2]
mydict['honda accord 2nd light'] = [44.00, 27.0, 2]
mydict['honda accord 2nd light'] = [23.00, 19.0, 5]
这里的最终目标是获得每个itemname的平均价格、平均小时数和总发生次数
dict[name] = [average price, average hours, total occurences]
你知道我能做些什么来让这件事更容易,更痛苦一点吗
既然您已经在处理数据库,为什么不在查询中进行聚合呢
相关问题 更多 >
编程相关推荐