반응형
Python을 처음 접한 초보자들이 가장 자주 마주치는 오류 중 하나는 IndentationError입니다. 이는 코드의 들여쓰기가 잘못되어 발생하는 문법 오류로, 다른 언어와 달리 Python은 들여쓰기를 통해 코드 블록을 구분하기 때문에 매우 중요합니다. 이번 포스팅에서는 IndentationError가 무엇인지, 어떤 상황에서 발생하는지, 그리고 이를 어떻게 해결할 수 있는지 단계별로 정리해보겠습니다.
1. IndentationError란 무엇인가?
1) 오류 정의
IndentationError는 들여쓰기가 잘못되어 Python 인터프리터가 코드의 구조를 이해하지 못할 때 발생하는 문법 오류입니다.
2) 발생 예시
def say_hello():
print("Hello, World!")
3) 실행 결과 (터미널)
File "main.py", line 2
print("Hello, World!")
^
IndentationError: expected an indented block
2. IndentationError 발생 원인
1) 코드 블록 내부에 들여쓰기가 없을 때
def greet():
print("Hi") # ❌ 들여쓰기 없음
2) 들여쓰기의 일관성이 없을 때 (탭 + 스페이스 혼용)
def greet():
name = "Alice"
print(name) # ❌ 탭과 스페이스 혼용
3) 불필요한 들여쓰기
print("Hello")
print("World") # ❌ 들여쓰기 불필요
4) 조건문/반복문 등 코드 블록 뒤에 코드가 없을 때
if True:
# 아무 코드도 없음 → 오류 발생
3. 해결 방법
1) 코드 블록 내부에는 항상 들여쓰기 사용
def greet():
print("Hi") # ✅ 올바른 들여쓰기
2) 들여쓰기는 스페이스 4칸을 일관되게 사용
- 설정 방법 (VSCode 기준):
settings.json에서 다음과 같이 설정
"editor.tabSize": 4,
"editor.insertSpaces": true
3) 빈 코드 블록은 pass로 처리
if True:
pass # ✅ 오류 방지용 placeholder
4) 에디터 기능 활용
- 들여쓰기 자동 교정 (VSCode: Alt + Shift + F)
- 탭 → 스페이스 변환 기능 사용하기
4. 추가 팁 및 참고 사항
- 들여쓰기는 Python 문법의 핵심이므로 무조건 일관되게 유지해야 합니다.
- 프로젝트 전체에 걸쳐 동일한 들여쓰기 스타일을 사용하는 것이 협업에서도 중요합니다.
- 에디터에서 ‘탭 보기’ 설정을 활성화하면 오류를 빠르게 찾을 수 있습니다.
5. 요약 및 마무리
이번 포스팅에서는 Python의 대표적인 오류 중 하나인 IndentationError의 발생 원인과 해결 방법에 대해 알아보았습니다. 들여쓰기는 Python에서 코드 블록을 구성하는 핵심 요소이므로 반드시 일관되게 사용해야 합니다. 오류가 발생했을 때는 줄별 들여쓰기 상태를 확인하고, 에디터 기능을 활용하여 수정하면 빠르게 해결할 수 있습니다. 초보자일수록 작은 습관이 큰 실수를 방지한다는 점을 기억하세요.
6. 관련 글 링크
- 관련 글: Python에서 SyntaxError: invalid syntax 오류 해결 방법과 원인 분석
반응형
'파이썬' 카테고리의 다른 글
[Python] range() 함수 사용법과 for문에서의 활용 예제 (0) | 2025.04.01 |
---|---|
[Python] TypeError: unsupported operand type(s) 오류 해결하기 (0) | 2025.04.01 |
[Python] 리스트와 딕셔너리의 차이점과 사용법 정리하기 (0) | 2025.03.28 |
[Python] 함수 정의와 사용법 (0) | 2025.03.28 |
[Python] JSON 데이터를 읽고 쓰는 방법 (json 모듈 사용법) (1) | 2025.03.26 |
댓글