728x90
IndentationError: expected an indented block
오류는 파이썬에서 들여쓰기를 해야 할 위치에 코드가 들여쓰기 없이 작성된 경우 발생합니다. 파이썬은 들여쓰기를 통해 코드 블록을 구분하기 때문에, 제어문이나 함수 정의 등 블록 구조가 필요한 구문 다음 줄에는 반드시 들여쓰기된 코드가 있어야 합니다.
이 오류는 주로 if
, for
, while
, def
, class
등의 키워드 다음에 코드를 작성하면서 들여쓰기를 빠뜨렸을 때 발생합니다. 다른 언어에서는 중괄호({}
)로 블록을 구분하지만, 파이썬은 들여쓰기로 블록의 시작과 끝을 판단합니다.
● 오류 발생 예시
if x > 0:
print("양수입니다")
위 코드는 if
다음 줄에 코드가 들여쓰기 없이 작성되어 있기 때문에 오류가 발생합니다.
IndentationError: expected an indented block
● 올바른 코드 예시
if x > 0:
print("양수입니다")
위와 같이 블록 안에 포함될 코드는 반드시 들여쓰기(보통 공백 4칸)되어야 합니다.
● 자주 하는 실수
- 빈 줄만 넣고 코드 작성을 건너뛴 경우
- 주석만 작성해도 블록이 없다고 판단
- 들여쓰기 대신 탭과 공백이 섞인 경우
● 디버깅 팁
- 모든 제어문 뒤에는 실제 실행 코드가 들여쓰기되어 있어야 함
- 코드 에디터에서 공백 vs 탭 설정을 일관되게 유지
- 코드 자동 정렬 기능(F8, Ctrl+Alt+L 등)을 활용
● 결론
파이썬은 들여쓰기를 문법 요소로 간주하기 때문에, 코드 블록이 필요한 구조에서는 반드시 들여쓰기를 해주어야 합니다. IndentationError: expected an indented block
오류는 그 구조가 충족되지 않았을 때 발생하므로, 모든 블록의 시작에는 들여쓰기된 실행 문장이 존재해야 합니다. 들여쓰기는 파이썬 문법의 핵심 중 하나이므로, 코딩 초기부터 정확히 익혀두는 것이 중요합니다.
728x90
'프로그래밍언어 > 파이썬[Error]' 카테고리의 다른 글
[파이썬][Error] 017. NameError - name 'x' is not defined (0) | 2025.05.26 |
---|---|
[파이썬][Error] 016. SyntaxError - invalid syntax in match-case (0) | 2025.05.26 |
[파이썬][Error] 014. SyntaxError - no binding for nonlocal 'x' found (0) | 2025.05.26 |
[파이썬][Error] 013. TypeError - __enter__ returned non-context-manager (0) | 2025.05.26 |
[파이썬][Error] 012. SyntaxError - 'finally' without 'try' (0) | 2025.05.26 |