類似max(len(s1), len(s2))
只會返回最大長度。但是,如果我真的想知道哪一個字符串更長,並且可能將它保存到另一個字符串,那麼這是如何完成的? max(s1,s2)
似乎返回具有較大值的字符串,但不一定是最長的。如何找到Python中最長的字符串?
注意:這必須完成沒有列表或數組。
類似max(len(s1), len(s2))
只會返回最大長度。但是,如果我真的想知道哪一個字符串更長,並且可能將它保存到另一個字符串,那麼這是如何完成的? max(s1,s2)
似乎返回具有較大值的字符串,但不一定是最長的。如何找到Python中最長的字符串?
注意:這必須完成沒有列表或數組。
max
需要key
函數導致max
採取最大key(val)
每個val
,但仍然返回val
,即:基於所述長度
>>> max("foobar", "angstalot")
'foobar'
>>> max("foobar", "angstalot", key=len)
'angstalot'
def longest(a, b):
if len(a) > len(b):
return a
return b
只是一個簡單的條件表達式每個字符串都是需要的:
longest = s1 if len(s1) > len(s2) else s2
爲什麼downvote?這是否不回答這個問題? – Joe
它的工作原理,但它不是慣用的,因爲正是這種功能,在一個更普遍和有用的形式,已經存在於內置。 – delnan
也許你應該編輯這個問題來說「這是幹什麼的?」。 – Joe