class Solution:
    def isValid(self , s: str) -> bool:
        ori_len = len(s)
        if ori_len == 0:
            return True
        elif ori_len%2 == 1:
            return False
        else:
            s = s.replace('()', '').replace('[]', '').replace('{}', '')
            if ori_len == len(s):
                return False
            else:
                return self.isValid(s)

简单的python解题思路:

由题目可知,每一对括号都需要按顺序闭合,因此序列长度必为偶数;

其次,从中间开始去除闭合的括号对后,必然出现新的闭合括号对,因此可以不断去除闭合的括号对,最后序列必然为空,否则有不合法的括号对。