본문 바로가기
Error

[Python / Error] - SyntaxError: invalid syntax

by nam_ji 2024. 9. 11.

파이썬 SyntaxError: invalid syntax 에러

에러 내용

  • SyntaxError: invalid syntax

문제 원인

  • 파이썬에 정의된 문법에 맞지 않는 코드가 사용되는 경우에 발생하는 에러입니다.
  • 파이썬은 있어야 할 게 없거나, 없어야 할 게 있거나, 사용하지 말아야 할 변수명을 사용하거나, 다른 개발 언어의 문법 규칙을 무의식 중에 쓰는 등의 모든 행위를 SyntaxError로 오류 메세지를 출력합니다.

해결 방법

  • 다른 오류 메세지와 달리 SyntaxError : Invalid syntax, 혹은 invalid token은 오류 메세지 안에 트러블 슈팅에 대한 힌트가 들어있지 않아 원인 파악이 어렵습니다.
  • 아래 사항을 하나씩 확인하면 트러블 슈팅을 진행하면 됩니다.

1. 오류가 발생한 위치 파악

  • SyntaxError 발생 시 파이썬에서 출력한 오류 위치가 반드시 정확한 오류 발생 위치는 아닐 수 있다는 점을 염두에 두고 트러블 슈팅을 진행합니다.
  • 오류 발생 위치의 문법에 문제가 없는 경우, 이전 줄에서 문법 오류가 발생했을 가능성이 높습니다.

2. 변수 이름 확인

  • 변수 이름에 Python 키워드가 들어가 있는지 확인합니다.

3. 콜론 확인

  • for, while, if 및 def문을 포함한 모든 복합문의 헤더 끝에 콜론(:)이 있는지 확인합니다.
  • 콜론(:)이 없는 경우 문법 오류 발생합니다.

4. 들여쓰기 확인

  • 들여쓰기가 tab혹은 스페이스 중 하나로 통일되어 있는지 확인합니다.

5. 쌍 문자 확인

  • '', "", (), {}, [] 등 쌍으로 동작하는 문자들이 정확히 한쌍씩 짝을 맞추고 있는지 확인합니다.

6. == 확인

  • ==을 =로 사용하지 않는지, =을 ==으로 사용하지 않는지 확인합니다.

7. 오타 확인

  • 파이썬의 예약어나 함수 이름을 잘못 입력하지 않았는지 확인합니다.

8. 파일 또는 모듈 import 오류

  • 코드가 다른 파일이나 모듈을 잘못된 방식으로 import하고 있지 않는지 확인합니다.