[英]Finding the keys with the shortest list of values in a dictionary
這是我的字典:
D = {'G': ['R'],
'L': ['H'],
'H': ['H', 'L', 'T', 'M'],
'T': ['R'],
'S': ['M', 'L', 'H'],
'M': ['R']}
我正在尋找在此字典中創建具有最短值列表的鍵列表。 在這種情況下,我會得到 output:
['G', 'L', 'T', 'M']
我有這個代碼,它成功地找到了具有最短值列表的第一個鍵,但是,它不會創建一個列表。
min_key, min_value = min(d.items(), key = lambda x: len(set(x[1])))
此代碼僅返回'G'
。
這是我創建列表的嘗試:
li = [k for k, v in d.items() if v == min_key]
li
這將返回一個空列表。
由於您在min_value
中存儲了最短的列表,因此您可以使用它的長度,然后執行
>>> [k for k, v in d.items() if len(v) == len(min_value)]
['G', 'L', 'T', 'M']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.