Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
0 / 0 / 0
Регистрация: 18.10.2019
Сообщений: 17

Поиск подстроки в Python 3

18.10.2019, 20:59. Показов 3893. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер. Очень прошу оказать помощь в решении задачи по Python 3.
На вход подаются две строки: текст T и слово W.
Если слово входит в текст один раз, то распечатайте индекс символа из T, с которого W начинается в тексте.
Если в T есть два или более не накладывающихся друг на друга вхождения строки W, распечатайте индексы символов, с которых начинаются самое первое и самое последнее вхождения.
Если W не содержится в T распечатайте слово None.

Формат ввода
Две строчки. На первой записан текст T. На второй записано слово W.

Формат вывода
Ожидается один из трех вариантов:
1. Одно целое число.
2. Два целых числа, записанных через пробел.
3. Слово None.

Примечания
Для поиска последнего вхождения слова W в текст T используйте метод str.rfind(). Метод str.rfind() работает также, как и str.find(), но ищет подстроку, начиная конца.

Пример
Ввод
Hello, Vasya! Vasya is good name.
Vasya

Вывод
7 14
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.10.2019, 20:59
Ответы с готовыми решениями:

Поиск подстроки
здравствуйте, у меня есть в строке текст: edmnchislo;1данныедействие;2данныедействий;\n ...

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

Поиск подстроки
Уважаемые форумчане, кодеры, кто может написать мне код на этом примере; Поиск подстрок. Вызов s.find(s1) в случае обнаружения в...

8
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
18.10.2019, 21:31
str2605,
Цитата Сообщение от str2605 Посмотреть сообщение
Для поиска последнего вхождения слова W в текст T используйте метод str.rfind(). Метод str.rfind() работает также, как и str.find(), но ищет подстроку, начиная конца
В примечании уже написано решение.
0
36 / 21 / 9
Регистрация: 17.10.2019
Сообщений: 95
18.10.2019, 21:37
Сначала указываете текст(1 параметром функции), а потом подстроку(2 параметр)
Python
1
2
3
4
5
6
7
8
9
10
11
12
def rindex2(text, sub):
    txt = text.split(sub)
    out = []
    if len(txt)==1:
        return None
    elif len(txt)==2:
        return text.index(txt[0]) + len(txt[0])
    else:
        for i in txt:
            if i != txt[len(txt)-1]:
                out.append(text.index(i) + len(i))
        return out
0
0 / 0 / 0
Регистрация: 18.10.2019
Сообщений: 17
18.10.2019, 21:50  [ТС]
Спасибо, но в решении выдает ошибку
0
36 / 21 / 9
Регистрация: 17.10.2019
Сообщений: 95
18.10.2019, 21:53
Какую именно ошибку?
0
36 / 21 / 9
Регистрация: 17.10.2019
Сообщений: 95
18.10.2019, 21:58
У меня все номально работает (Python 3.5 Linux Ubuntu 16.04 LTS)
Миниатюры
Поиск подстроки в Python 3  
0
0 / 0 / 0
Регистрация: 18.10.2019
Сообщений: 17
18.10.2019, 22:05  [ТС]
Вот что у меня выходит
Миниатюры
Поиск подстроки в Python 3  
0
36 / 21 / 9
Регистрация: 17.10.2019
Сообщений: 95
18.10.2019, 22:09
Попробуйте так
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
sub = input()
text = input()
txt = text.split(sub)
out = []
if len(txt)==1:
    print(None)
elif len(txt)==2:
    print(text.index(txt[0]) + len(txt[0]))
    else:
        for i in txt:
            if i != txt[len(txt)-1]:
                out.append(text.index(i) + len(i))
        print(out)
0
0 / 0 / 0
Регистрация: 18.10.2019
Сообщений: 17
18.10.2019, 22:34  [ТС]
к сожалению опять неверный ответ выдает

Добавлено через 16 минут
Нужно как-то через: для поиска последнего вхождения слова W в текст T используйте метод str.rfind(). Метод str.rfind() работает также, как и str.find(), но ищет подстроку, начиная конца.

Добавлено через 2 минуты
решение
Python
1
2
3
4
5
6
7
s = input()
ss = input()
a = s.find(ss)
b = s.rfind(ss)
if not ss in s: print('None')
elif a==b: print(a)
else: print(a, b)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.10.2019, 22:34
Помогаю со студенческими работами здесь

Поиск строки со значением первой подстроки и вывод значения её второй подстроки
Здравствуйте! Пытаюсь реализовать скрипт. Суть задумки скрипта сравнительно проста. На первом этапе считывается MAC адрес...

Поиск подстроки внутри данной строки, замена найденной подстроки на другую строку
Выполнить поиск подстроки внутри данной строки,замену найденной подстроки на другую строку Пример Исходная строка: aaaabbbaaa ...

Произвести поиск подстроки, если такой подстроки нет, то данную подстроку ввести в начало исходной строки
помогите, пожалуйста, в написании программы: Ввести строку из произвольного числа символов и произвести в ней поиск подстроки COMPUTER....

Поиск подстроки в строке и вывод подстроки
Удалите пожалуйста, разобрался

Заменить во введенном выражении все подстроки А на подстроки В и подстроки В на А
Программа со строками. Составить программу, заменяющую во введенном выражении все подстроки А на подстроки В и подстроки В на А. А=...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru