파이썬 if조건문과 들여쓰기
1. 들여 쓰기 1
IDLE 소스 코드 편집 창에
x=10
if x==10:
print('x가 10이 맞다면')
print('10을 출력하세요')
실행을 해보면 두 번째 print 부분에서 unexpected indent 에러가 발생
올바르게 고치면,
x=10
if x==10:
print('x가 10이 맞다면')
print('10을 출력하세요')
<출력>
x가 10이 맞다면
10을 출력하세요
즉, if다음에 오는 코드들은 반드시 들여 쓰기 깊이가 같아야 함.
2. 들여 쓰기 2
만약, 첫 번째 print만 들여 쓰기를 하고 두 번째 print는 들여쓰기를 하지 않으면?
x=10
if x==10:
print('x는 10입니다.')
print('맞습니다.')
<출력>
x는 10입니다.
맞습니다.
print 두 개가 모두 실행. 하지만 다음과 같이 x의 값이 다르다면?
x=10
if x==20:
print('x는 20입니다.')
print('x는 10입니다.')
<출력>
x는 10입니다.
x가 10이라서 조건식을 만족하지 않으므로 첫 번째 print는 실행 안됨
두 번째 print는 들여 쓰기가 없어서 if와 상관없는 코드이므로 실행됨
이러한 코드는 한 줄 띄어 쓰면 보기에도 편하고 이해하기도 쉬워짐
x=10
if x==20:
print('x는 20입니다.')
print('x는 10입니다.')
파이썬에서는 ':'가 나오면 다음 줄부터는 무조건 들여 쓰기를 한다는 점만 기억하면 됨
들여 쓰기는 4칸 or 2칸으로 해도 상관 없지만, '파이썬 코딩 스타일 가이드(PEP 8)'에서는 공백을 4칸으로 규정하므로 4칸을 권장함