Как найти и вывести самое короткое слово в строке?
Как в строке найти и вывести самое короткое слово(одно или несколько)?
- Вопрос задан более трёх лет назад
- 2388 просмотров
Комментировать
Решения вопроса 0
Ответы на вопрос 2
Backend developer
In [9]: s = 'foo bar test no text a' In [10]: sorted(s.split(), key=len) Out[10]: ['a', 'no', 'foo', 'bar', 'test', 'text']
Ответ написан более трёх лет назад
Комментировать
Нравится 3 Комментировать

Можно сделать так:
import re s = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." words = re.sub("[^\w]", " ", s).split() # если просто найти все минимальные слова t = [v for v in words if len(v) == len(min(words))] # если все слова надо разделить по длине from itertools import groupby t1 = print(t1[min(t1)], t)
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ваш ответ на вопрос
Войдите, чтобы написать ответ

- Python
- +1 ещё
Почему при большом количестве строк async выдает ошибку?
- 1 подписчик
- 2 часа назад
- 22 просмотра
Функция, которая находит самое короткое слово в тексте. Как исправить, чтобы заработала?
Проблема
Я задумывал функцию так, чтобы с каждой новой итерацией позиция пробела искалась в новом тексте, который получается путем среза: так я получу длины всех слов. Вместо этого позиция находится в исходном тексте (из переменной text_copy).
Как сделать, чтобы на каждой новой итерации обрабатывался новый фрагмент текста?
- Вопрос задан более двух лет назад
- 272 просмотра
Комментировать
Решения вопроса 2
Если, как выяснилось из коментариев «нужно, чтобы возвращалось не само слово, а его длина«, и «Как можно сделать это все без сплита и min?»
то тогда вот так:
def find_short(text): num_of_let=0 min_numb = len(text) for elem in text: if elem == ' ': if num_of_let < min_numb: min_numb=num_of_let num_of_let=0 else: num_of_let+=1 return min_numb text = 'bitcoin take over the world maybe who knows' find_short(text)
Результат:
Out[20]: 3
Как просили - не само слово, а его длина.
Если вы все таки передумаете и захотите иметь и самое короткое слово и его длину, но без функций, то сделать это можно вот так:
def find_short(text): num_of_let=0 word=[] min_numb = len(text) for elem in text: if elem == ' ': if num_of_let < min_numb: min_numb=num_of_let min_word=''.join(word) num_of_let=0 word=[] else: word=word+list(elem) num_of_let+=1 return min_numb,min_word
Только извращение все это. Нет, в целях "познания мира" конечно можно и потренироваться, для развития алгоритмического мышления например.
Но на то и придуманы функции, что-бы учиться их использовать там, где это целесообразно.
Условие
Дан текст: в первой строке задано число строк, далее идут сами строки. Выведите слово, которое в этом тексте встречается чаще всего. Если таких слов несколько, выведите то, которое меньше в лексикографическом порядке.
Решение
counter = <> for i in range(int(input())): line = input().split() for word in line: counter[word] = counter.get(word, 0) + 1 max_count = max(counter.values()) most_frequent = [k for k, v in counter.items() if v == max_count] print(min(most_frequent))
Добавить комментарий Отменить ответ
ЕГЭ на соточку для чайников
Прошу прощения, что так долго пропадал. Питошка вернулся, да еще и с группой в вконтакте, подписывайтесь. Помимо этого, на питошке откроется новая рубрика, в которой будут четкие объяснения всех заданий ЕГЭ и ОГЭ по информатике, внимательно прочитав которые, я уверен, вы улучшите свои баллы на экзамене
PYTHON найти самое длинное слово в строке, нельзя использовать split() Если слов несколько, то вывести любое из них

if current_word and len(current_word) > len(longest_word):
Объяснение:
Эта функция find_longest_word() принимает строку в качестве аргумента и возвращает самое длинное слово в этой строке. Она итерируется по каждому символу в строке и формирует текущее слово, если текущий символ является буквой. Когда она обнаруживает символ, который не является буквой, она проверяет длину текущего слова и сохраняет его как самое длинное слово, если оно длиннее, чем текущее самое длинное слово. После этого она обнуляет текущее слово, чтобы начать новое слово. Если последнее слово в строке является самым длинным, то она проверяет его длину перед возвратом.
Пример:
sentence = "The quick brown fox jumps over the lazy dog"
print("Самое длинное слово в предложении: ", longest_word)
Здесь мы передали функции find_longest_word() строку "The quick brown fox jumps over the lazy dog". Функция вернула самое длинное слово в этой строке, которое является "jumps"
Новые вопросы в Информатика
а = input("Введи час: ") print("В хвилині - ",(а*60)," секунд") print("В годині - ",(а*3600)," секунд") print("В добі - ",(а*(3600*24))," секунд") pri … nt("В місяці - ",(а*(3600*24)*30),"або","(а*(3600*24)*31)"," секунд") print("В році - ",(а*(3600*24)*365)," секунд") что здесь не так
Python решить без генератора списка и def если можно Задание 1 Создайте программу, хранящую информацию о великих баскетболистах. Нужно хранить ФИО б … аскетболиста и его рост. Требуется реализовать возможность добавления, удаления, поиска, замены данных. Используйте словарь для хранения информации. Задание 2 Создайте программу «Англо-французский словарь». Нужно хранить слово на английском языке и его перевод на французский. Требуется реализовать возможность добавления, удаления, поиска, замены данных. Используйте словарь для хранения информации. Задание 3 Создайте программу «Фирма». Нужно хранить информацию о человеке: ФИО, телефон, рабочий email, название должности, номер кабинета, skype. Требуется реализовать возможность добавления, удаления, поиска, замены данных. Используйте словарь для хранения информации. Задание 4 Создайте программу «Книжная коллекция». Нужно хранить информацию о книгах: автор, название книги, жанр, год выпуска, количество страниц, издательство. Требуется реализовать возможность добавления, удаления, поиска, замены данных. Используйте словарь для хранения информации.
как выйти из сюжетного режима в gta v
решите без генератора чисел и def если можно Задание 1Создайте программу «Фирма». Нужно хранить информацию о человеке: ФИО, телефон, рабочий email,наз … вание должности, номер кабинета, skype. Требуетсяреализовать возможность добавления, удаления, поиска, замены данных. Используйте словарь для храненияинформации.Задание 2Создайте программу «Книжная коллекция». Нужнохранить информацию о книгах: автор, название книги,жанр, год выпуска, количество страниц, издательство.Требуется реализовать возможность добавления, удаления, поиска, замены данных. Используйте словарь дляхранения информации.
1) Як створити презентацiю, використовуючи шаблони? 2) Якi режими роботи передбаченi 6 Power Point? 3) Якими способами можна вставити у презентацію т … аблиці, діаграми, малюнки, організаційні діаграми? 4) Як надами елементові презентації керуючої дi? 5) Як задати ефекти анімацiї об'єктам презентації? З яких об'єктів складається комп'ютерна публiкацiя? 7) Що таке шаблон, 8) Що таке макем?