Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 중첩된 if...else 문을 들여쓰는 방법

파이썬에서 중첩된 if...else 문 들여쓰기

들여쓰기(indentation)는 파이썬 문법에서 매우 중요한 특징입니다. 파이썬은 다른 언어와 달리 중괄호({}) 대신 들여쓰기를 사용해 코드 블록의 범위를 결정하기 때문에, 각 블록의 들여쓰기 수준은 반드시 이전 문장보다 깊어야 합니다.

따라서 프로그램 안에 여러 개의 if 문이 중첩(nested) 형태로 존재할 경우, 그다음에 오는 들여쓰기 블록마다 들여쓰기 수준이 점진적으로 더 깊어지게 됩니다.

중첩 if...else 문 예제

if expr1==True:
    if expr2==True:
        stmt1
    else:
        if expr3==True:
            stmt2
else:
    if expr3==True:
        stmt3
    else:
        stmt4

위 예제를 살펴보면, 가장 바깥쪽의 if expr1 문 아래에 있는 내부 if...else 블록은 한 단계 더 들여쓰기 되어 있고, 그 안의 조건문과 실행문은 다시 한 단계씩 더 깊게 들여쓰기 되어 있습니다. 이러한 계층적 들여쓰기 구조 덕분에 어떤 문장이 어느 조건 블록에 속하는지 시각적으로 명확하게 파악할 수 있습니다.

들여쓰기 시 주의 사항

  • 같은 블록에 속한 문장들은 반드시 동일한 들여쓰기 수준을 유지해야 합니다.
  • 공백 4칸을 사용하는 것이 파이썬 공식 스타일 가이드(PEP 8)에서 권장되는 방식입니다.
  • 탭(tab)과 공백(space)을 혼용하면 IndentationError가 발생할 수 있으므로 한 가지 방식으로 통일하는 것이 좋습니다.
  • 들여쓰기 수준이 잘못되면 의도와 다른 블록으로 해석되어 논리 오류가 발생할 수 있습니다.