파이썬 - 제어 흐름
안녕하세요, 미래의 파이썬 전문가 여러분! 오늘은 파이썬의 흥미로운 제어 흐름 세계에 몸을 던지는日子입니다. 제어 흐름을 프로그래밍의 신호등으로 생각해보세요 - 그것은 여러분의 코드의 흐름을 제어하며, 언제 간다고, 멈춰야 한다고, 또는 어딘가로 돌리는지를 말합니다. 시작해보겠습니다!
의사결정 문
얼음クリーム 가게에 있는 것을 상상해보세요. 초콜릿인가 바닐라인가 결정해야 합니다. 이것은 정확히 파이썬에서 의사결정 문이 하는 일입니다 - 프로그램이 선택을 할 수 있게 합니다.
'if' 문
'if' 문은 가장 간단한 의사결정 형식입니다. 이렇게 작동합니다:
ice_cream_flavor = "chocolate"
if ice_cream_flavor == "chocolate":
print("맛있어! 초콜릿이 제 최애야!")
이 예제에서, ice_cream_flavor
이 "chocolate"이라면, 메시지를 인쇄합니다. 그렇지 않으면 아무 일도 일어나지 않습니다.
'if-else' 문
하지만 조건이 틀리다면 무엇을 하고 싶은가요? 그럴 때 'else'가 필요합니다:
age = 15
if age >= 18:
print("투표할 수 있어!")
else:
print("죄송하지만, 투표할 수 있는 나이가 아니야.")
여기서, 만약 나이가 18이상이라면 "투표할 수 있어!"를 인쇄합니다. 그렇지 않으면 다른 메시지를 인쇄합니다.
'if-elif-else' 문
때로는 여러 조건을 확인해야 합니다. 이때 'elif'('else if'의 약자)가 매우 유용합니다:
score = 85
if score >= 90:
print("A")
elif score >= 80:
print("B")
elif score >= 70:
print("C")
else:
print("향상이 필요해")
이 코드는 점수를 확인하고 해당 점수에 해당하는 학점을 인쇄합니다.
루프 또는 반복 문
루프는 여러분의 코드에 마리고로우처럼 작동합니다. 같은 코드를 반복적으로 작성하지 않고 액션을 반복할 수 있게 합니다.
'for' 루프
'for' 루프는 반복할 횟수를 알 때 매우 유용합니다:
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(f"나는 {fruit}를 좋아해!")
이 루프는 리스트의 각 과일에 대해 "나는 [fruit]를 좋아해!"를 인쇄합니다.
'while' 루프
'while' 루프는 조건이 참인 동안 계속 진행합니다:
count = 0
while count < 5:
print(f"카운트는 {count}야")
count += 1
이 코드는 0에서 4까지의 카운트를 인쇄합니다.
점프 문
점프 문은 비디오 게임에서 비밀 통로처럼 작동합니다 - 코드의 일부를 건너뛰거나 루프를 조기에 종료할 수 있습니다.
'break' 문
'break'는 루프를 즉시 종료할 수 있게 합니다:
for i in range(10):
if i == 5:
print("5를 찾았어! 루프를 나가자.")
break
print(i)
이 코드는 0에서 4까지의 숫자를 인쇄한 후, 5를 찾으면 루프를 나갑니다.
'continue' 문
'continue'는 현재 반복의 나머지 부분을 건너뛰고 다음 반복으로 이동합니다:
for i in range(5):
if i == 2:
print("2를 건너뜀")
continue
print(i)
이 코드는 0에서 4까지의 모든 숫자를 인쇄하되, 2를 건너뜁니다.
'pass' 문
'pass'는 자리 표시자와 같습니다. 아무것도 하지 않지만, 빈 코드 블록이 필요할 때 유용합니다:
for i in range(5):
if i == 2:
pass # TODO: 2에 특별한 처리를 추가하자
else:
print(i)
이 코드는 2를 제외하고 모든 숫자를 인쇄하며, 2에서는 아무것도 하지 않습니다(현재는).
모두 합치기
이제, 이 개념들을 재미있는 작은 게임으로 결합해보겠습니다:
import random
secret_number = random.randint(1, 10)
attempts = 0
while True:
guess = int(input("숫자를 추측해보자 (1-10): "))
attempts += 1
if guess < secret_number:
print("너무 낮아!")
elif guess > secret_number:
print("너무 높아!")
else:
print(f"{attempts}번에 맞췄어!")
break
if attempts == 3:
print(f"죄송하지만, 시도 횟수를 다 써버렸어. 숫자는 {secret_number}야.")
break
이 게임은 while 루프, if-elif-else 문, 그리고 break 문을 사용하여 숫자 추측 게임을 만듭니다. 제어 흐름이 어떻게 상호작용하는 프로그램을 만들 수 있는지의 훌륭한 예시입니다!
요약
여기에 우리가 다룬 제어 흐름 문에 대한 빠른 참조 표가 있습니다:
문 | 목적 |
---|---|
if | 조건에 기반한 결정을 내리기 |
if-else | 두 옵션 중 하나 선택하기 |
if-elif-else | 여러 옵션 중 선택하기 |
for | 코드를 특정 횟수만큼 반복하기 |
while | 조건이 참인 동안 코드 반복하기 |
break | 루프를 조기에 종료하기 |
continue | 루프의 다음 반복으로 이동하기 |
pass | 아무것도 하지 않기 (자리 표시자) |
기억해두자, 제어 흐름을 마스터하는 것은 간단한 지시를 통해 복잡하고 아름다운 프로그램을 만들 수 있는 오케스트라를 연주하는 것과 같습니다. 계속 연습하면, 곧 파이썬 심포니를 쓰게 될 거야!
Credits: Image by storyset