作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
Possible Duplicate:
Python’s most efficient way to choose longest string in list?
我有一个列表 L
L = [[1,2,3],[5,7],[1,3],[77]]
我想返回最长子列表的长度而不需要遍历它们,在本例中为 3,因为 [1,2,3] 的长度为 3,它是四个子列表中最长的。我试过 len(max(L)) 但这并没有达到我想要的效果。有什么方法可以做到这一点,还是我唯一的方法是循环?
最佳答案
max(L,key=len)
将为您提供长度最长的对象(在您的示例中为 [1,2,3]
)——实际上得到长度(如果这就是你所关心的),你可以做 len(max(L,key=len))
这有点难看——我会把它分成两行。或者您可以使用 ecatamur 提供的版本。
所有这些答案都有循环——在我的例子中,循环是隐式,这通常意味着它们将在优化的 native 机器代码中执行。仔细想想,不看每个元素怎么知道哪个元素最长?
最后,请注意 key=function
不是 max
特有的功能。许多 python 内置函数(max
、min
、sorted
、itertools.groupby
、...)使用这个特定的关键字参数。绝对值得花一点时间来了解它的工作原理以及它的典型作用。
关于python - 最长子列表的长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13400876/
我是一名优秀的程序员,十分优秀!