List 包含大多数元素的列表

List 包含大多数元素的列表,list,dictionary,python,List,Dictionary,Python,我有一个以字典为元素的列表。每个字典都有一个名为type的条目。类型字段表示一个列表。获取包含最多元素的列表的最简单/python方法是什么 programmes_by_type = [] programmes_by_type.append({'type' : [1, 2, 3]}) programmes_by_type.append({'type' : [2, 5]}) programmes_by_type.append({'type' : [3]}) programmes_by_type.a

我有一个以字典为元素的列表。每个字典都有一个名为type的条目。类型字段表示一个列表。获取包含最多元素的列表的最简单/python方法是什么

programmes_by_type = []
programmes_by_type.append({'type' : [1, 2, 3]})
programmes_by_type.append({'type' : [2, 5]})
programmes_by_type.append({'type' : [3]})
programmes_by_type.append({'type' : [11, 2, 6, 7]})
在前面的示例中,它应该返回
[11,2,6,7]
列表

max_length = 0
type_list = None

for el in programmes_by_type:
    if len(el) > max_length:
        max_length = len(el)
        type_list = el['type']
type_list
现在包含最大的列表

max([option['type'] for option in programmes_by_type], key=len)

type\u list
现在包含了最大的列表。

挑剔:Python中没有
Null
,只有
None
。挑剔:Python中没有
Null
,只有
None
对于
max(…,key=…)
。值得注意的是,这需要Python2.5。这是正确的答案。我马上回答。最后一件事,如果类型条目是一个包含类型列表条目的字典,并且我需要包含大多数元素的类型列表条目,您将如何修改它?
max(programmes\u by\u type,key=lambda v:len(v['type'])
将返回dict而不是
max(…,key=…)的列表(+1)。
。值得注意的是,这需要Python2.5。这是正确的答案。我马上回答。最后一件事,如果类型条目是一个包含类型列表条目的字典,并且我需要包含大多数元素的类型列表,您将如何修改它?
max(programmes\u by\u type,key=lambda v:len(v['type'])
将返回dict而不是列表
max([option['type'] for option in programmes_by_type], key=len)