2019-04-04 回答
写了个函数,用户输入字符串,函数返回字符串是否符合条件的bool值。你说的“利用栈判断”不是很理解,代码中match + 1可看做入栈,match - 1看做出栈
修改:字符串 不需要以()开头结尾
#encoding=utf-8
from __future__ import print_function, division
def is_fine(thisstring, left_str="(", right_str=")"):
match = 0
for str in thisstring:
if str == left_str:
match = match + 1
elif str == right_str:
match = match - 1
if match < 0:
return false
if match != 0:
return false
else:
return true
if __name__ == "__main__":
s = raw_input()
print(is_fine(s))