Python-сообщество
- Начало
- » Центр помощи
- » Самое длинное слово в строке
#1 Июнь 5, 2011 17:35:48
Ksunich От: Зарегистрирован: 2011-06-05 Сообщения: 3 Репутация: 0 Профиль Отправить e-mail
Самое длинное слово в строке
Неделю назад начала изучать Питон, сегодня столкнулась с задачкой: найти самое длинное слово в строке. Вроде бы легкая, но уже всю голову себе сломала, а решение так и не придумала. Преобразовывала даже в список.
Основная мысль выглядела так:
a = “London is the capital of GB”
a.split(“ ”)
for word in a.split(“ ”):
print len(word)
Выводилась длина каждого слова. Не могу понять, как теперь можно найти самое длинное.
#2 Июнь 5, 2011 17:47:30
sp3 От: Зарегистрирован: 2010-01-12 Сообщения: 405 Репутация: 18 Профиль Отправить e-mail
Самое длинное слово в строке
>>> a = "London is the capital of GB"
>>> d = [(len(x),x) for x in a.split()]
>>> d = dict(d)
>>> d
>>> max(d), d[max(d)]
(7, 'capital')
>>> print max(d), d[max(d)]
7 capital
>>>
Отредактировано (Июнь 5, 2011 17:47:46)
#3 Июнь 5, 2011 18:04:42
Ksunich От: Зарегистрирован: 2011-06-05 Сообщения: 3 Репутация: 0 Профиль Отправить e-mail
Самое длинное слово в строке
sp3, спасибо!
Хотя, мне казалось, что должно быть проще.
Можно разъяснить вот эти две строчки:
>>> d =
>>> d = dict(d)
А без создания словаря как-нибудь можно сделать?)
#4 Июнь 5, 2011 18:21:21
doza_and От: Зарегистрирован: 2010-08-15 Сообщения: 4138 Репутация: 252 Профиль Отправить e-mail
Самое длинное слово в строке
print max("London si the capt".split(),key=len)
#5 Июнь 5, 2011 18:44:33
Ksunich От: Зарегистрирован: 2011-06-05 Сообщения: 3 Репутация: 0 Профиль Отправить e-mail
Самое длинное слово в строке
Блин, вот я курица, все так просто) Спасибо! Буду дальше учить
#6 Июнь 6, 2011 07:15:15
doza_and От: Зарегистрирован: 2010-08-15 Сообщения: 4138 Репутация: 252 Профиль Отправить e-mail
Самое длинное слово в строке
Думаю что вы ошибаетесь (начсет курицы). Хорошие мысли не всегда сразу приходят.
Отредактировано (Июнь 6, 2011 07:15:50)
Найти самое длинное слово в списке

Найти в тексте самое длинное слово
Доброго времени суток. Ребят, помогите, пожалуйста. Необходимо определить самое длинное слово.
Найти самое длинное слово в тексте
Как можно написать код,который определяет самое длинное слово в тексте?(Если можно,то в не в 1-3.
Найти самое длинное слово в строке
Найти самое длинное слово в строке, не используя команды split.
Найти самое длинное слово в предложении
Нужно написать программу, которая находит самое длинное слово в предложении, введенном.
Автоматизируй это!
![]()
7054 / 4559 / 1207
Регистрация: 30.03.2015
Сообщений: 13,132
Записей в блоге: 29
1 2 3
>>> words = ['learn', 'da', 'python'] >>> print(max(words, key=len)) python
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Найти самое длинное общее слово
Дано два текста состоящей из слов, разделенных пробелом,нужно найти самое длинное общее слово.
Найти и вывести на экран самое длинное слово в предложении
помогите решить задачу на языке python: Найти и вывести на экран самое длинное слово в.
Найти самое длинное слово, вторая буква которого е
Найти самое длинное слово среди слов, вторая буква которых есть "e"; если слов с наибольшей длиной.

Как найти самое частое слово в списке?
Как найти самое частое СЛОВО в списке? С числами мне объяснили, а вот теперь как со словами?

Определить самое длинное слово|предложение, удалить слово
на ввод нам дают текст. Задание: "Удалите самое длинное слово в самом длинном по числу слов.
Самое длинное слово
Напишите функцию, которая будет находить самое длинное слово в предложении. Если будет найдено два и больше слов одинаковой длины, нужно вернуть первое из них. Небуквенные символы (апостроф, точка, запятая и т. п.) считаются частью слова, к которому прилегают.
Примеры
longest_word("Margaret's toy is a pretty doll.") ➞ "Margaret's" longest_word("A thing of beauty is a joy forever.") ➞ "forever." longest_word("Forgetfulness is by all means powerless!") ➞ "Forgetfulness"
Вариант решения
def longest_word(s): return max(s.split(), key=len)
Не могли бы вы мне помочь со способом нахождения самого длинного слова с списке?
Вот код, который находит в строке все слова и заносит их в список, а потом печатает эти слова в столбец, как найти самое длинное из этих слов?
list = str(input()).split() for i in list: print(i) print("") print(list)
Отслеживать
задан 2 июн 2017 в 7:19
531 5 5 золотых знаков 11 11 серебряных знаков 23 23 бронзовых знака
Самое длинное слово может быть одно или несколько?
2 июн 2017 в 7:23
Допустим можно и одно.
2 июн 2017 в 7:52
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Можно использовать функцию max , и всё получается просто в 1 строку:
list = str(input()).split() print(max(list, key=len))
Отслеживать
ответ дан 2 июн 2017 в 7:25
9,081 2 2 золотых знака 16 16 серебряных знаков 35 35 бронзовых знаков
Для 3 питона: print(max(input().split(), key=len))
2 июн 2017 в 7:28
Да точно, не заметил метку python3
2 июн 2017 в 7:30
К сожалению не работает)
2 июн 2017 в 9:12
@Михаил Проверил только что ещё раз и всё работает, добавил в ответ рабочий пример
2 июн 2017 в 9:15
Или так:
sentense = "какое-либо предложение" words = dict() for word in sentense.split(" "): words[len(word)] = word biggest_word = words[max(words)] print(biggest_word)
Отслеживать
16k 4 4 золотых знака 19 19 серебряных знаков 30 30 бронзовых знаков
ответ дан 17 сен 2020 в 13:07
Alex Arzamascev Alex Arzamascev
21 2 2 бронзовых знака
Я изменил имя biggestWord на biggest_word , чтобы оно было в соответствии с PEP 8 — руководством по написанию кода на Python — lower_case_with_underscores (слова из маленьких букв с подчеркиваниями). Красивое решение, между прочим.
21 дек 2022 в 15:48
Если использовать lambda-функцию, то примет следующий вид:
print (lambda list: (max(list, key=len)))(str(input()).split())
Еще вариант на коленке через сортировку:
print sorted(str(input()).split())[-1]
Отслеживать
ответ дан 2 июн 2017 в 9:36
Eugene Dennis Eugene Dennis
2,482 1 1 золотой знак 9 9 серебряных знаков 14 14 бронзовых знаков
- python
- python-3.x
-
Важное на Мете
Связанные
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.11.15.1019
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
