Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/55: Рейтинг темы: голосов - 55, средняя оценка - 4.82
 Аватар для LiJuan_Jhao
22 / 22 / 0
Регистрация: 11.11.2019
Сообщений: 108

В тексте найти слова наименьшей и наибольшей длины

12.03.2020, 18:12. Показов 11138. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Напишите класс MinMaxWordFinder. Класс должен уметь анализировать текст и находить в нём слова наименьшей и наибольшей длины. Текст состоит из предложений, которые добавляются в обработку методом add_sentence. Метод shortest_words возвращает список самых коротких на данный момент слов, метод longest_words — самых длинных. Слова, возвращаемые методами shortest_words и longest_words, должны быть отсортированы по алфавиту.

Если одно из самых коротких слов встретилось в исходных предложениях несколько раз, оно должно столько же раз повториться в списке самых коротких слов. Самые длинные слова наоборот должны входить в список без повторов.

Формат ввода
Каждый тест представляет собой код, в котором будет использоваться ваш класс. Файл c решением не обязательно называть solution.py, он будет переименован автоматически. Тест запускается с вашим классом, а его вывод сравнивается с правильным решением.

Вот код:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class MinMaxWordFinder:
    def __init__(self):
        self.min_word = 0
        self.max_word = 0
        self.list_word = []
 
    def add_sentence(self, text):
        if len(text) == 0:
            pass
        else:
            self.list_word += text.split()
            self.min_word = len(min(self.list_word, key=len))
            self.max_word = len(max(self.list_word, key=len))
 
    def shortest_words(self):
        return sorted(list(filter(lambda x: len(x) == self.min_word, self.list_word)))
 
    def longest_words(self):
        return sorted(set(filter(lambda x: len(x) == self.max_word, self.list_word)))
Примеры и ошибка во вложениях
Миниатюры
В тексте найти слова наименьшей и наибольшей длины   В тексте найти слова наименьшей и наибольшей длины  
1
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.03.2020, 18:12
Ответы с готовыми решениями:

Найти в тексте слова наименьшей и наибольшей длины
Напишите класс MinMaxWordFinder. Класс должен уметь анализировать текст и находить в нём слова наименьшей и наибольшей длины. Текст состоит...

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

Написать функцию , которая в массиве строк в каждой строке меняет местами слова наибольшей и наименьшей длины
Написать функцию , которая в массиве строк в каждой строке меняет местами слова наибольшей и наименьшей длины

1
Модератор
Эксперт Python
 Аватар для Fudthhh
2696 / 1602 / 513
Регистрация: 21.02.2017
Сообщений: 4,210
Записей в блоге: 1
13.03.2020, 08:26
Лучший ответ Сообщение было отмечено CoMeLLa как решение

Решение

CoMeLLa,

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class MinMaxWordFinder:
    def __init__(self):
        self.min_word = 0
        self.max_word = 0
        self.list_word = []
 
    def add_sentence(self, text: str):
        if len(text.replace(" ", "")) != 0:
            self.list_word += text.split()
            self.min_word = len(min(text.split(), key=len))
            self.max_word = len(max(text.split(), key=len))
 
    def shortest_words(self) -> list:
        return sorted(list(filter(lambda x: len(x) == self.min_word, self.list_word)))
 
    def longest_words(self) -> list:
        return sorted(set(filter(lambda x: len(x) == self.max_word, self.list_word)))
Добавлено через 1 минуту
1) Ошибка проверки пустой строки, ведь пробелы это тоже символы.
2) Зачем каждый раз искать минимальную длину слов во всем тексте, ведь можно это делать только с текстом который добавляем.
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.03.2020, 08:26
Помогаю со студенческими работами здесь

Составьте программу поиска в заданном тексте слова наибольшей длины
1. Напишите программу подсчета количество вхождение в заданный текст заданного символа. 2. Составьте программу поиска в заданном тексте...

Даны два слова (длины M и N), состоящие из букв А, Г, Ц, Т. Найти подпоследовательность наибольшей длины
Молекулы ДНК, содержащие генетическую информацию – это длинные слова из четырех букв (А, Г, Ц, Т). В процессе эволюции, в результате...

Преобразовать массив, поменяв местами его первую серию наименьшей длины с последней серией наибольшей длины
Назовем серией группу подряд идущих одинаковых элементов, а длиной серии — количество этих элементов (длина серии может быть равна 1) ...

Найти в тексте слово наибольшей длины
Здравствуйте, товарищи программисты. Прошу помощи со следующей задачей: Найти в тексте слово наибольшей длины. Если слов несколько, то...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru