Python

[Python error] IndentationError: unexpected indent

코딩도어 2021. 11. 25. 17:37

□ IndentationError: unexpected indent


우리가 어떤 글을 작성할 때 그 언어만의 문법을 맞추고는 하죠.
그들의 문화, 억양 등을 표현할 때 정말 중요한 사항이라고 볼 수 있습니다. 컴퓨터 언어에서는 어떨까요?

컴퓨터 언어에서도 상당히 중요한 부분으로 작용하는데요. 왜 그럴까요? 컴퓨터는 사실 인간의 언어를 이해하지 못하기 때문입니다. 그래서 우리가 코딩하고 있는 언어를 컴퓨터 언어, 즉, 기계어로 번역을 해주어야 합니다. 그게 인터프리터(interpreter)의 기능입니다. 갑자기 이 얘기를 왜 하냐고요?

바로 오늘 포스팅할 error가 문법 에러이기 때문입니다. 컴퓨터가 이해할 수 있게 번역을 해주는데 문법이 틀렸다? 컴퓨터는 "이게 뭔 뜻임?" 이라고 반문할 것입니다.

이제 이러한 에러를 Python error의 범주로 넣어 포스팅할 예정입니다. 많이들 봐주시고 유용한 정보 얻어갔으면 좋겠습니다.

그럼 각설하고 IndentationError: unexpected indent 에러에 대해 알아보겠습니다.

여러분, 문장과 문장 사이는 마침표가 구분 짓습니다. 그렇다면 문단과 문단 사이는 보통 어떻게 구분 지을까요?
바로 들여 쓰기입니다. 들여쓰기를 함으로써 이 문단과 이 문단에 구분점을 만들어 놓는 것입니다.
모든 컴퓨터 언어는 아니고 파이썬에서는 사실 이 들여쓰기가 유용하게 사용됩니다.

특히 Notepad++에서 많이 나오는 에러예요. 파이썬에서는 Tab키를 이용하여 들여쓰기를 하는데
x=1, y=1, z=1을 변수로 선언하고 3개의 변수를 더하겠습니다.

x=1 y=1 z=1 print(x+y+z)

결과를 확인해볼까요?

 File "<ipython-input-6-54c545fd3870>", line 4 print(x+y+z) ^ IndentationError: unexpected indent


네 맞습니다. 바로 오류가 생기네요.
자 파이썬에서 어디가 오류인지 보면 print(x+y+z)에 오류가 생긴 것을 확인할 수 있습니다.

바로 들여쓰기가 잘못 표기되어 있기 때문입니다.
Tab키와 스페이스 키는 서로 들여쓰기가 다릅니다. 꼭 Tab키를 사용하세요.
그럼 라인을 맞추어 볼까요?

x=1 y=1 z=1 print(x+y+z)
3

오류가 해결된 것을 보았죠?
이렇게 오타만으로도 컴퓨터는 실행을 못합니다. 개발하실 때에는 꼭 명심하고 개발하시면 될 것 같습니다.

오늘 첫 포스팅인데 잘 보셨나요? 저도 왕초보 개발자로서 노력을 많이 하겠습니다. 구상한 포스팅은 많지만 버닝 아웃 안되려면 천천히 올려야겠죠? 그래도 당분간 하루에 하나로 해보겠습니다~