aa=(['第一次','小明',10],['第一次','小明',10],['第一次','小黑',10],['第一次','小红',10],['第二次','小明',5],
['第二次','小明',15],['第二次','小明',15],['第二次','小红',15],['第三次','小明',20],['第三次','小明',10],
['第三次','小明',10],['第三次','小红',10])
for bb in aa:
print(bb)
如图,请问如何实现分组求和,一共三个人、小明、小黑、小红。
想实现这样的结果:第一次小明一共20分、第一次小黑一共10分、第一次小红一共10分
第二次小明一共35分、第二次小红一共15分
第三次小明一共40分、第三次小红一共10分
谢谢!
aa=(['第一次','小明',10],['第一次','小明',10],['第一次','小黑',10],['第一次','小红',10],['第二次','小明',5],
['第二次','小明',15],['第二次','小明',15],['第二次','小红',15],['第三次','小明',20],['第三次','小明',10],
['第三次','小明',10],['第三次','小红',10])
temp1 = aa[0][0]
temp2 = aa[0][1]
s = aa[0][2]
for i in range(1,len(aa)):
if aa[i][0] == temp1 and aa[i][1] == temp2:
s+=aa[i][2]
else:
l=[temp1,temp2,s]
print(l)
temp1 = aa[i][0]
temp2 = aa[i][1]
s = aa[i][2]
l=[temp1,temp2,s]
print(l)
你题目的解答代码如下:
aa=(['第一次','小明',10],['第一次','小明',10],['第一次','小黑',10],['第一次','小红',10],['第二次','小明',5],
['第二次','小明',15],['第二次','小明',15],['第二次','小红',15],['第三次','小明',20],['第三次','小明',10],
['第三次','小明',10],['第三次','小红',10])
dic = {}
for a,b,c in aa:
dic[(a,b)] = dic.get((a,b),0) + c
for (a,b),v in dic.items():
print(f"{a}{b}一共{v}分")
如有帮助,望采纳!谢谢!