본문 바로가기
프로그래밍언어/파이썬[Error]

[파이썬][Error] 016. SyntaxError - invalid syntax in match-case

by about_IT 2025. 5. 26.
728x90

SyntaxError: invalid syntax in match-case 오류는 파이썬 3.10부터 도입된 match-case 문법을 잘못 사용했을 때 발생합니다. match-case는 구조적 패턴 매칭을 위한 구문으로, 문법이 엄격하며 특정한 키워드 및 들여쓰기 규칙을 지켜야 합니다. 문법이 조금만 틀려도 SyntaxError가 발생할 수 있습니다.

이 오류는 match 또는 case 키워드의 위치가 잘못되었거나, 콜론(:)이 누락되었거나, 패턴이 잘못 기술되었을 때 자주 발생합니다. 또한 파이썬 3.9 이하 버전에서 match-case 문법을 사용하려고 하면 무조건 문법 오류가 발생합니다.

● 오류 발생 예시

match value
    case 1:
        print("1입니다.")

위 코드는 match 문에 콜론(:)이 누락되었기 때문에 오류가 발생합니다.

SyntaxError: invalid syntax

● 올바른 코드 예시

match value:
    case 1:
        print("1입니다.")
    case _:
        print("기타 값")

이 코드는 문법적으로 올바른 match-case 구조이며, 값에 따라 다른 분기 처리가 가능합니다.

● 자주 하는 실수

  • 파이썬 3.9 이하 버전에서 match-case 사용
  • match 또는 case 다음에 콜론 누락
  • 패턴이 잘못되었거나 잘못된 식별자를 사용한 경우
  • 들여쓰기 불일치 또는 블록 생략

● 디버깅 팁

  • 파이썬 버전이 3.10 이상인지 확인
  • 모든 match, case 문에 콜론을 붙였는지 점검
  • 패턴 매칭에 사용하는 값이 유효한 리터럴 또는 구조인지 확인

● 결론

match-case 문법은 매우 유용하지만, 도입된 지 오래되지 않아 문법 실수가 자주 발생합니다. 이 오류는 대부분 문법 요소(콜론, 들여쓰기, 키워드 등)의 실수로 발생하므로, 예제 문법을 참고해 정확한 구조를 따르는 것이 중요합니다. 또한 해당 문법은 파이썬 3.10 이상에서만 지원되므로, 버전 호환성도 반드시 확인해야 합니다.

728x90