Python 查找包含大多数元素的列表

Python 查找包含大多数元素的列表,python,list,list-comprehension,element,Python,List,List Comprehension,Element,以下是3个列表: test1 = ['a','a','a','a','a'] test2 = ['b','b,'b'] test3 = ['c','c','c','c','c','c','c','c'] 如何输出包含大多数元素的列表?下面的这个解决方案来自@Rifat Alptekin切丁:但它输出一个由字典定义的“字符串”。如何输出包含大多数元素的列表 lists=[test1, test2, test3] listnames=["list1", "list2", "list3"] mos

以下是3个列表:

test1 = ['a','a','a','a','a']
test2 = ['b','b,'b']
test3 = ['c','c','c','c','c','c','c','c']
如何输出包含大多数元素的列表?下面的这个解决方案来自@Rifat Alptekin切丁:但它输出一个由字典定义的“字符串”。如何输出包含大多数元素的列表

lists=[test1, test2, test3]
listnames=["list1", "list2", "list3"]

most = listnames[np.argmax([len(l) for l in lists])]
电流输出

most = 'list3'
most = test3
所需输出

most = 'list3'
most = test3
这将为您提供实际的列表,而不是您所说的字符串名称

>>> assert max(lists, key=len) == test3
>>> 

这将使用列表理解功能获得最长的列表:

most = [x for x in [test1,test2,test3] if len(x) == max([len(y) for y in [test1,test2,test3]])][0]

基本上,它会列出列表的长度,选择最大的,然后选择第一个具有该长度的列表。

包含相同或最长列表的大多数元素的列表?您将使用哪个Python函数来决定哪个列表包含最多的元素?(提示:它是
len
)另外,您是否需要知道哪个变量的列表最长,或者您只是对最长的变量本身感兴趣?您需要它做什么?我正在寻找包含大多数元素的列表,而不考虑类似元素@KentShikama。但这会输出字典定义的“字符串”。你是什么意思?这回答了你的问题吗@izzleee
max(list,key=len)
将返回该列表