Рубрики
Без рубрики

Как найти самую длинную строку в списке Python?

Используйте встроенный MAX () Python Max () с клавишным аргументом, чтобы найти самую длинную строку в списке. Вызов max (lst,), чтобы вернуть самую длинную строку в LST с помощью встроенной функции Len () для ассоциирования веса каждой строки – самая длинная строка будет максимальной. Способность проблем с учетом списка строк Python. Найдите … Как найти самую длинную строку в списке Python? Подробнее “

Автор оригинала: Chris.

Используйте встроенный Python Макс () Функция с клавишным аргументом, чтобы найти самую длинную строку в списке. Позвоните Макс (lst,) Чтобы вернуть самую длинную строку в lst Использование встроенного Лен () Функция для ассоциирования веса каждой строки – самая длинная строка будет максимальной.

Постановка проблемы

Учитывая список строк Python. Найдите строку с максимальным количеством символов – самая длинная строка в списке.

Вот несколько примеров списка строк и желаемый выход:

# ['Alice', 'Bob', 'Pete']   ---->   'Alice'
# ['aaa', 'aaaa', 'aa']      ---->   'aaaa'
# ['']                       ---->   ''
# []                         ---->   ''

Решение: MAX () Функция с клавишным аргументом функции Len ()

Используйте встроенный Python Макс () Функция с клавишным аргументом, чтобы найти самую длинную строку в списке. Позвоните Макс (lst,) Чтобы вернуть самую длинную строку в lst используя Встроенный Лен () Функция для ассоциирования веса каждой строки – самая длинная строка будет максимальной.

Вот определение кода get_max_str () Функция, которая принимает список строк в качестве ввода и возвращает самую длинную строку в списке или ValueError. Если список пуст.

def get_max_str(lst):
    return max(lst, key=len)

Вот вывод на наших желаемых примерах:

print(get_max_str(['Alice', 'Bob', 'Pete']))
# 'Alice'

print(get_max_str(['aaa', 'aaaa', 'aa']))
# 'aaaa'

print(get_max_str(['']))
# ''

print(get_max_str([]))
# ValueError

Дело по границе: что, если список пуст?

Если вы хотите вернуть альтернативное значение в случае Список пуст Вы можете изменить get_max_str () Функция, чтобы включить второй дополнительный аргумент:

def get_max_str(lst, fallback=''):
    return max(lst, key=len) if lst else fallback


print(get_max_str([]))
# ''

print(get_max_str([], fallback='NOOOOOOOOO!!!!!!'))
# NOOOOOOOOO!!!!!!

Решение с циркой

Меньше Pythonic, но для начинающих кодеров, более читаемая версия – это следующий цикл, –

def get_max_str(lst, fallback=''):
    if not lst:
        return fallback

    max_str = lst[0]   # list is not empty

    for x in lst:
        if len(x) > len(max_str):
            max_str = x

    return max_str


print(get_max_str(['Alice', 'Bob', 'Pete']))
# 'Alice'

print(get_max_str(['aaa', 'aaaa', 'aa']))
# 'aaaa'

print(get_max_str(['']))
# ''

print(get_max_str([], fallback='NOOOOOOOOO!!!!!!'))
# NOOOOOOOOO!!!!!!

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python одноклассники (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.

Оригинал: “https://blog.finxter.com/how-to-find-the-longest-string-in-a-python-list/”