data = [{'名字': '张燕', '手机号': '6222209190', '话费': '0.00'}, {'名字': '张燕', '手机号': '623059100001', '话费': '0.00'}, {'名字': '刘良', '手机号': '62305901', '话费': '0.00'}, {'名字': '马春霞', '手机号': '2624594545', '话费': '0.00'}, ]
如何统计 每个人多少个手机号,多少话费
下面这种格式
{"姓名": "张燕", "手机号": 10个, "话费": 25115元}
刚才漏掉了电话号码重复的情况,现修改如下:
name = []
phone = []
fee = []
for i in data:
name.append(i['名字'])
phone.append(i['手机号'])
fee.append(eval(i['话费']))
for i in set(name):
f=0
p=set()
for m,o,n in zip(name,phone,fee):
if i==m:
p.add(o)
f+=n
res={'姓名':i,'手机号':f'{len(p)}个','话费':f'{f:.2f}元'}
print(res)