Как найти самое короткое слово в строке python
Перейти к содержимому

Как найти самое короткое слово в строке python

  • автор:

Найти самое короткое слово в строке

Author24 — интернет-сервис помощи студентам

Найти самое длинное и самое короткое слово, посчитать в них гласные
Дан текст, текст состоит из предложений. В предложениях, которые заканчиваются на вопросительный.

Самое длинное слово и самое короткое слово
Разработайте программу, которая получает от пользователя 10 слов (по одному в строке), а затем.

Самое короткое слово в списке
Написать программу, вычисляющую длину самого короткого слова в предложении из трех слов.

Даны два предложения без знаков препинания (слова разделены пробелами). Найти самое короткое слово первого предложения,
Даны два предложения без знаков препинания (слова разделены пробелами). Найти самое короткое слово.

302 / 212 / 112
Регистрация: 03.12.2016
Сообщений: 409
maksssutka,

def min_len(string) return (min((len(x), x) for x in string.split())[1])

Status 418

Эксперт Python

4570 / 2338 / 601
Регистрация: 26.11.2017
Сообщений: 5,265
Записей в блоге: 3
avdivo, у min же key есть.
302 / 212 / 112
Регистрация: 03.12.2016
Сообщений: 409

eaa, ага)
есть

Добавлено через 1 час 47 минут

def min_len(string): return (min(string.split(), key=len))

Регистрация: 22.09.2022
Сообщений: 57

Пишет invalid syntax

Добавлено через 5 минут
как правильно оформить вывод ?

Добавлено через 8 минут
АКТУАЛЬНО

Эксперт функциональных языков программированияЭксперт Python

35997 / 20112 / 4196
Регистрация: 12.02.2012
Сообщений: 33,305
Записей в блоге: 13

ЦитатаСообщение от maksssutka Посмотреть сообщение

— чудненько! «Для сельской местности сойдет»:

1 2 3 4 5 6 7 8 9 10 11 12
def foo(sent): lst=sent.split() minl=len(sent) shortest=sent for w in lst: if len(w)minl: shortest=w minl=len(w) return shortest txt=input("Введите предложение: ") print("Самое короткое слово:",foo(txt))

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Вывести самое короткое слово в предложении
Здравствуйте! Помогите решить задачу в Python. Спасибо! Дана строка-предложение на русском.

Определить, сколько раз встречается в файле самое короткое слово
Дан файл(файл нужно создать), содержащий текст на русском языке. Определить, сколько раз.

Дана строка символов. Самое длинное слово в строке и то же самое Определить количество слов в длине
Дана строка символов. Самое длинное слово в строке и то же самое Определить количество слов в.

Найти в строке самое длинное слово, в котором присутствует подряд две согласные буквы
Пользователь вводит строку произвольной длины. Найти в строке самое длинное слово, в котором.

Найти самое длинное слово в строке
Найти самое длинное слово в строке, не используя команды split.

Выведите САМОЕ короткое слово, которое в тексте встречается чаще всего
Дан текст. Выведите САМОЕ короткое слово, которое в этом тексте встречается чаще всего. Далее.

Найти самое длинное слово, начинающееся с согласной буквы, и поменять его с последним словом в строке (Pascal -> Python)
Дана строка символов.Найти самое длинное слово начинающееся с согласной буквы и поменять его с.

Или воспользуйтесь поиском по форуму:

Найти самое короткое слово длины в строке в Python

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

def longWord(string): alist = [] length = 0 for letter in string: if letter != " ": length +=1 else: alist.append(length) length = 0 return alist 

Так что, если ввод «счастливого дня», моя функция печати говорит мне, что самое длинное слово — 5 символов.

Однако, за всю жизнь я не могу понять, как написать что-то, что будет выбирать длину самого короткого слова в строке ввода. Как мне это сделать?

Поделиться Источник 04 ноября 2017 в 18:10

3 ответа

Самый простой способ найти самое маленькое слово — использовать функцию min вместе с функцией len в качестве key :

>>> s = 'Happy day' >>> l = s.split() >>> min(l, key=len) => 'day' 

Аналогично, для поиска самого длинного слова, используйте max :

>>> max(l, key=len) => 'Happy' 

Теперь простейшая часть, для получения его длины, заключит вышеуказанное в функцию len :

>>> len(min(l, key=len)) => 3 

Поделиться 04 ноября 2017 в 18:13

Если вы хотите знать только длину, а не фактическое слово, вы можете использовать:

def length(s): l = map(len, s.split()) return max(l), min(l) 

Поделиться 04 ноября 2017 в 18:17

Вы можете попробовать это:

s = "This is a template sentence" final_data = sorted(s.split(), key=len) minimum = final_data[0] maximum = final_data[-1] 

Напишите программу, которая в заданном предложении находит самое короткое и самое длинное слова

Без учета знаков препинания (их просто в начале нужно убрать циклом, если есть таковые)

Остальные ответы

s=sorted(‘Самое короткое или длинное слово в предложении’.split(), key=len)
print(s[0],s[-1])

Похожие вопросы

Ваш браузер устарел

Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.

Как найти и вывести самое короткое слово в строке?

Как в строке найти и вывести самое короткое слово(одно или несколько)?

  • Вопрос задан более трёх лет назад
  • 2466 просмотров

Комментировать

Решения вопроса 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 Комментировать

Vaindante

Можно сделать так:

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

  • Python
  • +1 ещё

Почему не корректно работает код?

  • 2 подписчика
  • час назад
  • 45 просмотров

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *