Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 균형 잡힌 괄호 확인

<시간/>

여러 번 표현이 그 안에 있는 괄호와 관련하여 균형이 맞는지 찾아야 합니다. 균형이 잡혔다는 것은 각 왼쪽 대괄호에 해당하는 오른쪽 대괄호가 있고 대괄호 순서가 적절하게 정렬되었음을 의미합니다. 이것은 대괄호가 많이 사용되는 프로그램이나 수학적 표현을 작성할 때 중요합니다. 이 주제에서는 대괄호를 포함하는 표현식이 균형을 이루는지 여부를 프로그래밍 방식으로 알아내는 방법을 볼 것입니다.

제거를 통해

이 방법에서는 가장 안쪽에 있는 대괄호 쌍을 찾아 null 값으로 바꿉니다. 모든 브래킷 쌍이 교체될 때까지 이 작업을 계속합니다. 여전히 일부 대괄호가 남아 있으면 표현식이 균형을 이루지 않은 것입니다. 그렇지 않으면 표현식이 균형을 이루는 것으로 나타납니다.

def brackets(expression):
   all_br = ['()', '{}', '[]']
   while any(x in expression for x in all_br):
      for br in all_br:
         expression = expression.replace(br, '')
   return not expression

# calling the function
input_string = "([]{}()"
if brackets(input_string):
   print(input_string,"balanced")
else:
   print(input_string,"Not balanced")

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

([]{}() Not balanced