python - 如何根据相关值获得最大项目?

标签 python list max

我有这个数组:

array = ["a\nb", "c", "d"]

我想找出哪个数组的元素有更多行以及有多少行。我想要 python 中的这个 ruby​​ 代码:

array.map {|e| e.split("\n").size }.max #=> 2

这行得通,但我想知道是否有更好的方法:

bigger = 0
for e in array:
    e_lines = len(e.split('\n'))
    if e_lines > bigger:
        bigger = e_lines

最佳答案

In [54]: array = ["a\nb", "c", "d"]
In [56]: max(e.count("\n") for e in array)+1
Out[56]: 2

如果您还想要一个具有最大行数的(可能是非唯一的)元素:

In [60]: max((e.count("\n")+1, e) for e in array)
Out[60]: (2, 'a\nb')

关于python - 如何根据相关值获得最大项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14883395/

相关文章:

c - 在结构中存储数据(链表)

c - OpenMP 减少,变量不是私有(private)的?

sql - 特定 id 的最大日期返回值

python - 从多个拆分单个

python - 通过重复 2D numpy 数组中的值创建 4D numpy 数组

python - 如何将 SparseTensorValue 转换为 numpy 数组?

Python 比较两个不同长度的列表

Python如何在其中也包含字符串的列表中获取数字总和

python - 参数的子类初始化

c - 使用将超过其类型最大值的索引/计数器循环