Python. Простые алгоритмы
- Python. Простые алгоритмы
- Просмотров: 1335
24. Строки. Проверка расстановки скобок
Проверьте, правильно ли в заданном тексте расставлены круглые скобки.
В заданном тесте убираем все символы кроме скобок
s = "".join(x for x in s if x in "()")
Способ 1. Использование метода replace()
s= '()()()'
# s= ')(()()()'
s = s.replace('()', "")
if len(s)==0:
print('Правильно')
else:
print('Не правильно')
#Правильно
Способ 2. Использование стека
stack = []
for ch in s:
if ch == '(':
stack.append(ch)
elif ch == ')':
if stack:
stack.pop()
if len(stack)==0:
print('Правильно')
else:
print('Не правильно')
#Правильно
Вариант для различных скобок
В заданном тесте убираем все символы кроме скобок
s = "".join(x for x in s if x in "〈({[]})〉")
# пока в строке есть пары скобок
while '()' in s or '[]'in s or '{}' in s:
s = s.replace('()','').replace('[]','').replace('{}','')
if len(s) ==0:
print('Правильно')
else:
print('Не правильно')
#Правильно