首页 > 编程语言 >Python: 括号匹配

Python: 括号匹配

时间:2022-11-30 19:44:07浏览次数:45  
标签:nexus 匹配 brackets Python char 括号 return stack match

 

s1 = '[{(b)}][[]]'
s2 = '[{(b}][[]]'


def brackets_match(s: str) -> bool:
    opening_brackets = '([{'
    closing_brackets = ')]}'
    nexus = {')': '(', ']': '[', '}': '{'}
    stack = []
    for char in s:
        if char in opening_brackets:
            stack.append(char)
        elif char in closing_brackets:
            if not stack:
                return False
            if stack[-1] == nexus[char]:
                stack.pop()
            else:
                return False
    return stack == []


print(brackets_match(s1))
print(brackets_match(s2))

 

标签:nexus,匹配,brackets,Python,char,括号,return,stack,match
From: https://www.cnblogs.com/dissipate/p/16939544.html

相关文章

  • Python: stack
     Astackisalineardatastructurethatstoresitemsinalast-in-first-outLIFOorfirst-in-last-outFILOmanner,Instack,anewelementisaddedatonee......
  • 10 个杀手级的 Python 自动化脚本
    重复性任务总是耗时且无聊,想一想你想要一张一张地裁剪100张照片或FetchAPI、纠正拼写和语法等工作,所有这些任务都很耗时,为什么不自动化它们呢?在今天的文章中,我将与你......
  • PYTHON 数据结构 - 列表
    1.1列表列表类似元组:可以存放多个元素(可不同类型)有顺序可重复列表是可变的,可添加,删除,排序元素1.2列表的创建#列表=[元素1,元素2,...]a=[1,2,3,4]a=[]......
  • Python高级-正则表达式-笔记
    1.re模块操作在Python中需要通过正则表达式对字符串进行匹配的时候,可以使用一个模块,名字为re1.re模块的使用过程#coding=utf-8#导入re模块importre#使用mat......
  • 数据结构实验之栈与队列四:括号匹配 sdut-oj
    #include<stdio.h>#include<stdlib.h>#defineSTACK_INIT_SIZE100#defineSTACKINCREMENT10typedefstruct{  char*base;  ......
  • python中如何自己实现一个带颜色的打印
    importtimedefget_time_stamp():ct=time.time()local_time=time.localtime(ct)data_head=time.strftime("%Y-%m-%d%H:%M:%S",local_time)......
  • windows python虚拟环境创建Django项目
    为虚拟环境新建一个目录。创建一个目录将其命名为virtualenv,再在终端中切换到这个目录,先安装virtualenv如有则跳过​​​pipinstall--uservirtualenv​​可以使用如下指......
  • 如何发现Python依赖库漏洞
    因为python编程的流行,python的各种库也越来越多,但许多小伙伴可能只注意到了自己编程所要依赖的环境,但是却忽略了库的版本也有可能存在漏洞的风险,如果不及时检查和更新python......
  • Python高级-多任务协程-笔记
    为了更好的理解协程,可以翻阅上一篇​​ Python高级-多任务进程-笔记​​1.迭代器迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合......
  • 实现Trie树-Python
    #实现Trie树:字典套字典classTrie():def__init__(self):self.child={}definsert(self,word):current_node=self.child......