要编写一个程序来检查用户输入的圆括号和方括号是否被正确嵌套,我们需要理解几个基础概念:
[()]
是正确嵌套的,而 [(])
是错误嵌套的。def is_nested_correctly(s):
stack = []
matching_bracket = {')': '(', ']': '['}
for char in s:
if char in matching_bracket.values(): # 如果是左括号,压入栈
stack.append(char)
elif char in matching_bracket.keys(): # 如果是右括号
if stack == [] or matching_bracket[char] != stack.pop():
return False
else:
return False # 非法字符
return stack == [] # 如果栈为空,则正确嵌套
# 用户输入
user_input = input("请输入圆括号和方括号:")
if is_nested_correctly(user_input):
print("括号被正确嵌套。")
else:
print("括号没有被正确嵌套。")
通过上述方法,可以有效地检查括号的嵌套是否正确,并在各种应用场景中发挥作用。
领取专属 10元无门槛券
手把手带您无忧上云