获取列表中包含更多元素的列表

时间:2018-05-14 08:27:42

标签: python arrays dictionary-comprehension

我已经看过几篇关于列表字典的帖子,但到目前为止他们都没有帮助我。我有一个列表字典,如:

dict = {'a': [1,5,4], 'b': [4], 'c': [1,5,4,3,8], 'd': [1,4]}

现在我想在循环中获取包含更多元素的列表,在这种情况下,第一个列表将是" c"然后删除该列表并再次启动循环。我开始追加键和#34; dict"的值。在一个数组(我不知道这是否有必要):

for key, value in dict.items():
    array_keys.append(str(key))
    array_values.append(dict[key])

接下来,我尝试启动循环并获取包含更多元素的列表:

max_list = max([len(i) in array_values])

有了这个,我得到" 5"这是字典中值的最大元素数。我想得到名单," c"。你能救我吗?

1 个答案:

答案 0 :(得分:4)

.与关键功能一起使用:

max()

返回值最长的键。

通常max(dictobject, key=lambda k: len(dictobject[k])) 会比较你给它的可迭代的值,返回最后排序的元素。如果您传递一个键功能,它将返回max()最后排序的值。这里的key函数返回与字典键关联的值的长度。