如何在Python中找到最长的字符串?

时间:2012-09-21 21:45:22

标签: python string string-length

max(len(s1), len(s2))之类的内容只会返回最大长度。但是如果我真的想找出哪个字符串更长,并且可能将它保存到另一个字符串,那怎么办呢? max(s1,s2)似乎返回值较大的字符串,但不一定是最长的字符串。

注意:这必须在没有列表或数组的情况下完成。

3 个答案:

答案 0 :(得分:39)

max使用key函数会导致maxkey(val)获取最大val,但仍会返回val,说:

>>> max("foobar", "angstalot")
'foobar'
>>> max("foobar", "angstalot", key=len)
'angstalot'

答案 1 :(得分:1)

只需要一个基于每个字符串长度的简单条件表达式:

longest = s1 if len(s1) > len(s2) else s2

答案 2 :(得分:0)

def longest(a, b):
   if len(a) > len(b):
       return a
   return b