0
Проблема в Python с задачей
Нужно чтобы пользователь вводил текст, а код вывел самое большое слово в этом тексте text = input() l = text.split() text1 = ' '.join(l) text2 = text1.split() cont = [] for i in text2: cont.append((len(i))) if max(cont) == len(i): print(i) Мой код Но он что-то не работает, показывает самое большое слово только тогда, когда их 3
6 ответов
+ 1
Всё делается в одну строчку: max(text.split(), key=len)
0
Не совсем понимаю первые 4 строчки кода, ибо они цикличны, но можешь попробовать использовать функцию max и её аргумент key для решения это задачи
0
Timur и Alexey, спасибо за помощь. Можете пожалуйста расшифровать max(text.split(), key=len) что тут за что отвечает, чтобы мне больше разобраться в этом
0
Text.split() разобьёт предложение по слову в лист, а max вернет наибольшее значение по длине из листа
0
всё понял, спасибо за ответ
0
Andrey Chiruk len это сокращённая запись для стандартного метода len(). Если бы это была твоя собственная функция, то нужно было бы писать:
key = lambda x: len(x)
Т.е. максимум из результатов функции len().