Потребовалось мне написать функцию нахождения максимальной длинны строки из списка строк. Другими словами имеем следующий список строк:
l = ['ab', 'bcd', 'cda', 'bababa', 'c']
после обработки функцией вышеуказанного списка на выходе должно быть число 6 соответсвующее длинне строки ‘bababa’
Собственно ничего сложного нет. Я сходу нарисовал вот такое решение
def maxLen(myList):
maxi = 0
for item in myList:
if maxi < len(item):
maxi = len(item)
return maxi
но уж больно страшно и коряво это выглядит :-(. Немного погодя родился такой вариант
def maxLen(myList):
return max(map(lambda x: len(x),myList))
коротко, лаконично, но с первого взгляда не поймешь что тут происходит. Без комментариев не обойтись.
Я вот тут подумал. Может уважаемые эксперты предложат, что-нибудь красивое и гармоничное?