Python: 括号匹配()-python
Python: 括号匹配()
s1 = '[{(b)}][[]]'
s2 = '[{(b}][[]]'
def brackets_match(s: str) -> bool:
opening_brackets = '([{'
closing_brackets = ')]}'
nexus = {')': '(', ']': '[', '}': '{'}
stack = []
for char in s:
if char in opening_brackets:
stack.append(char)
elif char in closing_brackets:
if not stack:
return False
if stack[-1] == nexus[char]:
stack.pop()
else:
return False
return stack == []
print(brackets_match(s1))
print(brackets_match(s2))
————————
s1 = '[{(b)}][[]]'
s2 = '[{(b}][[]]'
def brackets_match(s: str) -> bool:
opening_brackets = '([{'
closing_brackets = ')]}'
nexus = {')': '(', ']': '[', '}': '{'}
stack = []
for char in s:
if char in opening_brackets:
stack.append(char)
elif char in closing_brackets:
if not stack:
return False
if stack[-1] == nexus[char]:
stack.pop()
else:
return False
return stack == []
print(brackets_match(s1))
print(brackets_match(s2))