python括号配对检测代码
时间: 2024-09-18 18:15:32 浏览: 28
Python中的括号配对检测通常用于检查字符串中诸如花括号({})、方括号([])和圆括号(())等是否成对出现并且匹配。这在编写代码解析、语法分析或者调试过程中很有帮助。下面是一个简单的Python函数示例,它使用栈数据结构来进行括号配对的检测:
```python
def is_paired_brackets(s):
stack = []
pairs = {')': '(', ']': '[', '}': '{'}
for char in s:
if char in pairs.values():
stack.append(char)
elif char in pairs.keys() and (not stack or stack.pop() != pairs[char]):
return False
return not stack # 如果堆栈为空,则所有括号都已正确配对
# 示例用法
s1 = "()" # 匹配
s2 = "([)]" # 不匹配,右括号']'未找到对应的左括号'
s3 = "{[()]}" # 匹配
print(is_paired_brackets(s1)) # 输出: True
print(is_paired_brackets(s2)) # 输出: False
print(is_paired_brackets(s3)) # 输出: True
```
这个函数通过遍历输入字符串`s`,如果遇到右括号,就将其推入栈中;如果遇到左括号,且栈顶元素是其对应右括号,就弹出栈顶元素。若在整个过程结束后,栈为空,则说明所有的括号都是成对的。