我對這一切都很新,所以這可能是一個noobie問題..但我期待找到字典值的長度......但我不知道如何做到這一點。如何找到字典值的長度
因此,例如,
d = {'key':['hello', 'brave', 'morning', 'sunset', 'metaphysics']}
我想知道是否有一種方法,我可以找到len個或號碼字典值的項目。
感謝
我對這一切都很新,所以這可能是一個noobie問題..但我期待找到字典值的長度......但我不知道如何做到這一點。如何找到字典值的長度
因此,例如,
d = {'key':['hello', 'brave', 'morning', 'sunset', 'metaphysics']}
我想知道是否有一種方法,我可以找到len個或號碼字典值的項目。
感謝
肯定。在這種情況下,你只是做:
length_key = len(d['key']) # length of the list stored at `'key'` ...
這很難說,爲什麼你真的想這樣,但也許這將是有益創建另一個字典的鍵映射到值的長度:
length_dict = {key: len(value) for key, value in d.items()}
length_key = length_dict['key'] # length of the list stored at `'key'` ...
+1,但「length_key」作爲變量名有點誤導,因爲它是給定值的長度。 – user1269942 2014-10-04 06:40:14
@ user1269942 - 是的,我很難爲這個名字命名。 。 。 – mgilson 2014-10-04 07:06:18
要找到所有值的長度在字典中,你可以這樣做:
lengths = [len(v) for v in d.values()]
@squinguy我認爲,因爲字典不保留秩序這樣做將不明確哪些列表項對應哪個字典條目。 – user1269942 2014-10-04 06:38:04
@ user1269942這很公平,但沒有提到將值與它們的鍵相關聯。我只是看到了所有值的長度。 – squiguy 2014-10-04 06:39:30
雅,一個公平的解釋!我沒有想到這一點......我只是添加了一條評論,讓他們知道有含糊之處。 – user1269942 2014-10-04 06:41:06
讓我們做一些實驗,看看我們如何獲得/解釋字典中不同的字典/數組值的長度。
創建我們的測試字典,看到list and dict comprehensions:
>>> my_dict = {x:[i for i in range(x)] for x in range(4)}
>>> my_dict
{0: [], 1: [0], 2: [0, 1], 3: [0, 1, 2]}
獲取特定鍵值長度:
>>> my_dict[3]
[0, 1, 2]
>>> len(my_dict[3])
3
獲取每個鍵的值的長度的字典:
>>> key_to_value_lengths = {k:len(v) for k, v in my_dict.items()}
{0: 0, 1: 1, 2: 2, 3: 3}
>>> key_to_value_lengths[2]
2
獲取字典中所有值長度的總和:
>>> [len(x) for x in my_dict.values()]
[0, 1, 2, 3]
>>> sum([len(x) for x in my_dict.values()])
6
d={1:'a',2:'b'}
sum=0
for i in range(0,len(d),1):
sum=sum+1
i=i+1
print i
OUTPUT = 2
你可以給這個代碼更多的上下文嗎? – 2018-02-07 10:15:55
感謝您使用此代碼段,這可能會提供一些有限的短期幫助。通過展示*爲什麼*這是一個很好的解決方案,並且使它對未來的讀者更有用,一個正確的解釋[將大大提高](// meta.stackexchange.com/q/114762)其長期價值其他類似的問題。請[編輯]你的答案以添加一些解釋,包括你所做的假設。 – 2018-02-07 12:07:56
如下文所述,它不管你將與你的長度做...長度爲每個鍵或只是一個長度的名單是什麼? – user1269942 2014-10-04 06:42:52