python字典一键多值_Python实现字典一个键对应多个值

Python实现字典的一键多值情况,采用 { key: [list] }形式;并根据键对多个值进行平均。

df411ece067e

可复制代码:

keys = [1,2,3,4,5,6,3,4,5,7]

values = [11,22,33,44,55,66,77,88,99,100]

dictionary = {}

for i in range(len(keys)):

dictionary.setdefault(keys[i], []).append(values[i])

print('Dictionary: %s' %dictionary)

# 对字典的一个键对应的多个值进行平均,存储在两个数组中

import numpy as np

key = []

value_avg = []

for k, v in dictionary.items():

key.append(k)

if len(v) >1 :

value_avg.append(np.mean(np.array(v)))

else:

value_avg.append(v[0])

print('The key array is : %s' % key)

print('Averaged value is: %s' % value_avg)

输出结果:

Dictionary: {1: [11], 2: [22], 3: [33, 77], 4: [44, 88], 5: [55, 99], 6: [66], 7: [100]}

The key array is : [1, 2, 3, 4, 5, 6, 7]

Averaged value is: [11, 22, 55.0, 66.0, 77.0, 66, 100]

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值