这里需要引入包pythonds
具体文件和安装方法请访问这条博客:
PyCharm环境中安装pythonds-1.2.1-py3-none-any.whl的方法.
代码:
# 匹配括号
from pythonds.basic import Stack # 引入栈
def par_checker(symbol_string):
s = Stack()
balanced = True # 括号对应状态
index = 0 # 下标
while index < len(symbol_string) and balanced:
symbol = symbol_string[index]
if symbol == "(":
s.push(symbol) # 入栈
else:
if s.isEmpty(): # 如果栈为空
balanced = False
else:
s.pop() # 出栈
index += 1 # 遍历下一个
if balanced and s.isEmpty():
return True
else:
return False