Python 圆括号严重平衡代码运行时错误

Python 圆括号严重平衡代码运行时错误,python,python-3.x,runtime-error,Python,Python 3.x,Runtime Error,有人能帮我调试代码吗?这是为了检查“括号平衡”。输入是少于10k个字符的字符串 代码: 共有10个测试用例,我的代码通过了除测试用例3之外的所有测试用例,在测试用例3中,它悲惨地给出了一个运行时错误。我已经让它生成随机输入并“自运行”了一个小时,但没有任何运行时错误代码。有专家能指出可能的问题吗 非常感谢 您有关于错误的任何信息吗?那么什么是测试用例3,它与测试用例1、2、4(等等)有何不同?请让你的问题自我包含。问题文本的图像没有多大帮助。@khelwood遗憾的是,它只说“运行时错误”。@

有人能帮我调试代码吗?这是为了检查“括号平衡”。输入是少于10k个字符的字符串

代码:

共有10个测试用例,我的代码通过了除测试用例3之外的所有测试用例,在测试用例3中,它悲惨地给出了一个运行时错误。我已经让它生成随机输入并“自运行”了一个小时,但没有任何运行时错误代码。有专家能指出可能的问题吗


非常感谢

您有关于错误的任何信息吗?那么什么是测试用例3,它与测试用例1、2、4(等等)有何不同?请让你的问题自我包含。问题文本的图像没有多大帮助。@khelwood遗憾的是,它只说“运行时错误”。@usr2564301问题文本的图像是问题陈述,测试用例不是公开的,但我相信测试用例3不应该是“10k长度字符串”,而是更短的字符串,以查看您的算法是否正确。@usr2564301基本上不会告诉您任何事情。-。
def is_matched(expression):
    opening = tuple('({[')
    closing = tuple(')}]')
    # can use mapping = dict(zip(opening, closing))
    mapping = {'(': ')', '{': '}', '[': ']'}
    queue = []

    for letter in expression:
        if letter in opening:
            queue.append(mapping[letter])
        elif letter in closing:
            if not queue or letter != queue.pop():
                return False
    return not queue

if __name__ == '__main__':
    string = input()
    if len(string) % 2 == 0: print (['No','Yes'][is_matched(string)])
    else: print ('No')