我有这个数组:
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/