完整代码:
"""
判断代码括号平衡,即是否闭合
"""
# 定义栈类
class Stack(object):
def __init__(self): #初始化空栈
self.items = []
def isEmpty(self): #是否为空
return self.items == []
def push(self, item): #在最后添加一个元素
self.items.append(item)
def pop(self): #删除最后一个元素
return self.items.pop()
def peek(self): #查看最后一个元素
return self.items[len(self.items)-1]
def size(self): #查看栈的大小
return len(self.items)
# 检测括号是否闭合
def parChecker(symbolString):
s = Stack() #实例化栈类
balanced = True #初始化括号为闭合状态(成对)
index = 0 #初始化索引值
while index < len(symbolString) and balanced: #检测字符索引在范围内,且括号为闭合状态,则
symbol = symbolString[index] #获取待测字符串的当前索引字符
if symbol in "({[": #如果当前字符为"(",则
s.push(s