簡體   English   中英

計算字典中的值數

[英]Counting the number of values in a dictionary

我需要編寫一個程序來計算字典中值的數量。

例如,說我有這本字典。

{'a': ['aardvark'], 'b': ['baboon'], 'c': ['coati'], 'd': ['donkey', 'dog', 'dingo']}

結果應該是6,因為有6個值。

當我使用此代碼時,我得到4。

def how_many(aDict):

    sum = len(aDict.values())

    return sum

animals = {'a': ['aardvark'], 'b': ['baboon'], 'c': ['coati'], 'd': ['donkey', 'dog', 'dingo']}

print(how_many(animals))

我是Python的新手,所以請不要做任何困難的事情。

您可以在生成器表達式上使用sum來計算每個值的len ,如下所示:

>>> my_dict = {'a': ['aardvark'], 'b': ['baboon'], 'c': ['coati'], 'd': ['donkey', 'dog', 'dingo']}

#       returns list of all values v
>>> sum(len(v) for v in my_dict.values())
6

或者 ,您也可以使用帶有sum map來實現此目的:

>>> sum(map(len, my_dict.values()))
6

您需要對aDict.values()中每個元素的長度求和:

>>> aDict = {'a': ['aardvark'], 'b': ['baboon'], 'c': ['coati'], 'd': ['donkey', 'dog', 'dingo']}
>>> sum(len(item) for item in aDict.values())
6

暫無
暫無

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

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