Python 코드를 작성할 때, IndentationError는 비교적 자주 발생하는 오류 중 하나입니다. 이 오류는 들여쓰기가 잘못된 경우에 나타나며, Python은 들여쓰기를 통해 코드 블록을 구분하기 때문에 이를 명확하게 하는 것이 매우 중요합니다.
(아무래도 부딪혀가면서 배우다보면 익숙해지기 마련이긴 합니다.)
1. IndentationError란?
IndentationError는 Python 코드에서 들여쓰기가 제대로 이루어지지 않았을 때 발생합니다. 다른 프로그래밍 언어들은 {}와 같은 기호로 코드 블록을 구분하는 반면, Python은 들여쓰기를 사용하여 코드 구조를 정의합니다. 따라서 들여쓰기가 누락되거나 잘못된 경우 Python은 코드의 논리적인 흐름을 이해하지 못해 오류를 반환합니다.
예시를 한번 볼까요?
2. 발생 예시
(1) 아래와 같은 코드에서 IndentationError가 발생할 수 있습니다.\n
def my\_function():
print("Hello") \# 오류 발생
위 코드에서는 print("Hello")가 함수 내부에 포함되어야 하지만, 들여쓰기가 적용되지 않아 오류가 발생합니다. 이 경우 Python 인터프리터는 다음과 같은 오류 메시지를 출력합니다.
IndentationError: expected an indented block
(2) 또한 같은 깊이에 있는 코드들에 대해서 다른 띄어쓰기를 적용할 경우,다음과 같이 오류가 납니다.
if a :
print(a)
print(1)
3. 해결 방법
(1) 문제를 해결하려면 들여쓰기를 올바르게 적용해야 합니다. Python에서는 일반적으로 4칸의 공백을 사용하여 들여쓰기를 작성합니다. 아래는 올바르게 수정된 코드입니다.
def my\_function():
print("Hello") \# 올바른 들여쓰기
(2) 여기서는 두 줄이 각 4칸씩 띄우지는 않았지만 어쨌든 일관되게 두 번씩 띄어쓰기를 함으로써 문제를 해결했습니다. 아래는 올바르게 수정된 코드입니다.
if a :
print(a)
print(1)
연습할 때부터 코드 전체에서 들여쓰기 스타일(공백 또는 탭)을 일관되게 유지하도록(자신만의 습관을 만들도록) 하는 것이 중요합니다.
'Trial & Error' 카테고리의 다른 글
파이썬 입문 시에 많이 보는 에러(5) - TypeError (1) | 2024.12.20 |
---|---|
파이썬 입문 시에 많이 보는 에러(4) - SyntaxError (0) | 2024.12.18 |
파이썬 입문 시에 많이 보는 에러(3) - import 오류 (0) | 2024.12.17 |
파이썬 입문 시에 많이 보는 에러(2)-NameError (0) | 2024.12.16 |
파이썬 초보를 위한 VScode 파이썬 세팅 방법 (1) | 2024.10.03 |