加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 如何找到字典中值之间的所有差异?

发布时间:2020-12-20 12:01:06 所属栏目:Python 来源:网络整理
导读:说我有一本字典: dictionary = {'A':3,'B',8,'C',12} 我怎么能循环遍历字典这样我找到每个值之间的差异并保存结果. 例如,我想(没有硬编码)使用上面的字典返回如下的字典: differences = {'A_minus_B':-5,'B_minus_A':5,'A_minus_C':-8,'C_minus_A':8,'C_mi
说我有一本字典:

dictionary = {'A':3,'B',8,'C',12}

我怎么能循环遍历字典这样我找到每个值之间的差异并保存结果.

例如,我想(没有硬编码)使用上面的字典返回如下的字典:

differences = {'A_minus_B':-5,'B_minus_A':5,'A_minus_C':-8,'C_minus_A':8,'C_minus_B':4,'B_minus_C':-4}

我可以对它进行硬编码,但我希望我的函数更具动态性,以便我可以添加更多元素,而无需编写繁琐的代码行来合并新元素.

解决方法

一个可行而又丑陋的循环解决方案:

differences = dict()
for k1,v1 in dictionary.items():
    for k2,v2 in dictionary.items():
        if k1==k2: continue
        differences[k1 + '_minus_' + k2] = v1-v2

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读