if 제어문
흐름 제어문은 프로그램이 실행되는 흐름을 조절하는 데 사용됩니다. 이를 통해 프로그램은 특정 조건에 따라 다른 명령문을 실행하거나 반복할 수 있습니다. 파이썬에서는 if, for, while이라는 세 가지 주요 흐름 제어문을 사용할 수 있습니다.
- if 문은 주어진 조건이 참인 경우에만 특정 코드 블록을 실행합니다. 이를 통해 프로그램은 조건에 따라 다른 동작을 수행할 수 있습니다. 예를 들어, 현재 시간에 따라 "Good Morning" 또는 "Good Evening"을 출력할 수 있습니다.
if문 기본원칙
if 문은 프로그램이 조건을 판별하고, 그 결과에 따라 다른 동작을 수행하는 데 사용됩니다. 아래는 if 문의 기본적인 구조와 설명입니다.
✔ 예시
if 조건:
# 조건이 참(True)일 때 실행되는 코드 블록
명령문1
명령문2
...
else:
# 조건이 거짓(False)일 때 실행되는 코드 블록 (생략 가능)
명령문A
명령문B
...
- if 조건:: 조건은 참(True) 또는 거짓(False)이 될 수 있는 표현식입니다. 조건이 참이면 if 블록의 명령문이 실행됩니다.
- else:: else 블록은 if 조건이 거짓일 때 실행됩니다. 이 블록은 생략될 수 있습니다.
- : (콜론): 각 if 및 else 문의 끝을 나타냅니다. 이후에는 코드 블록이 따라옵니다.
- 들여쓰기: 파이썬은 공백을 사용하여 코드 블록을 구분합니다. 들여쓰기로 블록의 범위를 나타냅니다.
if문 예제
✔ 예시
import datetime
# 현재 시간을 가져오기
current_time = datetime.datetime.now()
hour = current_time.hour
# 현재 시간이 오전인지 확인하고 출력
if hour < 12:
print("Good Morning")
else:
print("Good Evening")
이 코드는 현재 시간을 가져와 시간에 따라 "Good Morning" 또는 "Good Evening"을 출력합니다. if 문은 조건을 판별할 때 사용됩니다. 조건이 참이라면 if 블록의 명령문을 실행하고, 그렇지 않으면 else 블록의 명령문을 실행합니다. else 조건절은 생략할 수 있습니다.
✔ 예시
import datetime
# 현재 시간을 가져오기
current_time = datetime.datetime.now()
hour = current_time.hour
# 현재 시간이 오전인지 확인하고 출력
if hour < 12:
print("Good Morning")
else:
print("Good Evening")
위 코드에서는 datetime 모듈을 사용하여 현재 시간을 가져옵니다. 현재 시간의 시간을 나타내는 hour 변수를 사용하여 현재 시간이 오전인지를 확인합니다. 현재 시간이 12보다 작으면 "Good Morning"을 출력하고, 그렇지 않으면 "Good Evening"을 출력합니다.
✔ 예시
number = 23 # 우리가 맞춰야 할 숫자를 지정합니다.
# 사용자로부터 정수를 입력받습니다.
guess = int(input('정수를 입력하세요: '))
# 입력한 숫자와 우리가 정한 숫자를 비교합니다.
if guess == number: # 만약 입력한 숫자와 우리가 정한 숫자가 같다면,
print('축하합니다, 정답입니다!') # 축하 메시지를 출력합니다.
print('하지만 상품은 없어요!') # 상품 없음 메시지를 출력합니다.
elif guess < number: # 입력한 숫자가 정한 숫자보다 작다면,
print('아니요, 조금 더 큰 숫자입니다.') # 더 큰 숫자 입력 요청 메시지를 출력합니다.
else: # 그 외의 경우 (입력한 숫자가 정한 숫자보다 크다면),
print('아니요, 조금 더 작은 숫자입니다.') # 더 작은 숫자 입력 요청 메시지를 출력합니다.
print('끝났습니다.') # 마지막으로 '끝났습니다.' 메시지를 출력합니다.
✔ 예시
if True: # 만약 True라면
print('네, 맞아요.') # "네, 맞아요." 출력
if - elif - else 문의 실행이 끝나면, 파이썬은 해당 조건문을 포함하는 블록 다음 줄부터 실행을 재개합니다. 예를 들어, 위의 예제에서는 이 블록이 최상위 블록이므로 다음에 실행될 명령문은 print 'Done'입니다. 이후에는 프로그램이 종료됩니다.