【问题标题】:sum of dictionary values in python 3python 3中字典值的总和
【发布时间】:2016-05-28 14:06:39
【问题描述】:

我有以下字典:

dic= {'I-setosa': 8, 'I-versicolor': 2, 'I-virginica': 0}

我怎样才能找到键的总和?在Python 2 中,我可以执行以下操作:

sum(dic.values())

除此之外还有其他方法吗?我尝试使用dic.values() 并找到该列表的总和,但它太长了。

【问题讨论】:

  • 它在 Python 3 中工作。
  • 你遇到了什么错误?
  • @StefanPochmann 我用另一种方式写了这个问题。刚刚编辑过。
  • “太长”是什么意思?这只是三个要素!顺便说一句,这不是一个列表。
  • 这不仅在 Python 3 中仍然有效,而且比以前更好,因为它不会生成毫无意义的值列表。在 Python 2 中,sum(dic.itervalues())sum(dic.viewvalues()) 将是避免列表的方法。

标签: python dictionary python-3.5


【解决方案1】:
sum(dic.values())

除此之外还有什么办法吗?

当然。无穷多。但你为什么要问?这是正确的方法。

【讨论】:

  • 作为记录,如果在 IPython 中使用 --pylab 标志,或者如果您已执行 from pylab import *,这将不起作用,因为这两者都会用 @987654325 覆盖基础 sum @的sum,执行sum(dic.values())时返回dict_values迭代器。
猜你喜欢
  • 2012-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-04
  • 1970-01-01
  • 2014-11-16
  • 2012-05-23
相关资源
最近更新 更多