簡體   English   中英

返回字典Python中所有值的總和

[英]Return the sum of all values in a dictionary Python

需要幫助制作函數sumcounts(D)其中D是一個以數字作為值的字典,返回所有值的總和。 示例輸出應如下所示:

>>> sumcounts({"a":2.5, "b":7.5, "c":100})
110.0
>>> sumcounts({ })
0
>>> sumcounts(strcount("a a a b"))
4

它已經存在:

sum(d.values())

或許那樣:

def sumcount(d):
    return sum(d.values())

我不確定你對字典學過什么,所以我會假設最低限度。

  1. 創建一個total變量並將其設置為0
  2. 使用for x in y語法的法線迭代字典中的所有鍵。
  3. 對於每個鍵,使用your_dict[key_name]從字典中獲取其各自的值。
  4. 將該值添加到total
  5. 獲得A作業。

邁克爾已經發布了常規的Pythonic解決方案。

邁克爾上面給出的答案就是現場!

我想建議,如果你打算使用大型數據集來查看最優秀的Pandas Python框架。(也許你的問題有點過分但值得一看)

例如,它接受字典並將其轉換為數據集

 yourdict = {"a":2.5, "b":7.5, "c":100}
 dataframe = pandas.Series(yourdict)

你現在有一個非常強大的數據框架,你可以真正做很多整潔的東西,包括獲得總和

sum = dateframe.sum()

您也可以輕松地繪制它,將其保存為excel,CSV,獲得均值,標准差等...

   dateframe.plot()      # plots is in matplotlib
   dateframe.mean()      # gets the mean
   dateframe.std()       # gets the standard deviation
   dataframe.to_csv('name.csv') # writes to csv file

我真的可以推薦熊貓。 它改變了我使用Python進行數據業務的方式......順便說一句,它與R數據框架相比較。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM