Вводится текст со сбалансированными скобками, программа выводит на экран содержимое скобок. На пробелы и знаки препинания внимание не обращать, вложенных скобок в исходной строке нет.
решить задачу методом find
python
text = input("Введите текст со скобками: ")
Далее, необходимо создать цикл, который будет искать скобки в тексте. Переменная `start` будет хранить индекс открывающейся скобки, и инициализируется значением 0.
Цикл будет выполняться до тех пор, пока найдутся новые скобки. Внутри цикла, будем использовать метод `find()` для поиска скобок. Метод `find()` возвращает индекс первого вхождения указанной подстроки.
В качестве аргумента метода `find()` передадим открывающуюся скобку '(' и перед индексом, на котором начинаем поиск, добавим единицу. Полученный индекс будем хранить в переменной `start`.
Далее, для поиска закрывающейся скобки, использовать метод `find()`, так же передавая в качестве аргумента закрывающуюся скобку ')' и индекс для поиска.
Полученные индексы будут храниться в переменных `end` и `start`.
Далее можно использовать срезы, чтобы получить содержимое скобок. Добавим проверку на то, что найдены и открывающаяся и закрывающаяся скобки, чтобы получить валидный срез.
Решение задачи будет выглядеть следующим образом:
python
text = input("Введите текст со скобками: ")
# Инициализация переменных
start = 0
end = 0
# Поиск открывающейся скобки
start = text.find('(', start)
# Поиск закрывающейся скобки
end = text.find(')', end)
# Вывод содержимого скобок
while start >= 0 and end >= 0:
print(text[start+1 : end])
start = text.find('(', end)
end = text.find(')', end+1)
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет
Нажимая «Регистрация» или «Войти через Google», вы соглашаетесь с Публичной офертой, даете Согласие на обработку персональных данных, а также подтверждаете что вам есть 18 лет