데이터 엔지니어링

패스트캠퍼스 환급챌린지 38일차: 데이터엔지니어링 초격차 강의 후기

Big Byte 2025. 5. 8. 22:08

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.

파이썬 🐍! 연산자, 조건문, 반복문으로 프로그램의 흐름을 지배하라!

안녕하세요, 여러분! ✨

 

지난 시간에는 파이썬의 기본 재료인 변수, 상수, 리터럴, 그리고 다양한 자료형들에 대해 알아봤었죠! 📦👚

 

마치 요리를 시작하기 전에 싱싱한 재료들을 준비하는 과정과 같았다고 할까요? 🥕🍅 character_name = "파이썬 용사"처럼 변수에 이름을 붙여주고, PI = 3.14처럼 약속된 상수를 만들고, 100이나 "Hello" 같은 리터럴 값들을 int, str, list 등 다양한 자료형의 옷을 입혀봤습니다. 자바의 String name = "자바 용사";final double PI = 3.14;와 비교하며 파이썬만의 유연함도 느껴보셨을 거예요!

 

자, 이제 멋진 재료들이 준비되었으니, 이 재료들을 가지고 맛있는 요리(프로그램)를 만들 차례입니다! 🍽️ 요리에는 레시피가 필요하듯, 프로그래밍에도 '흐름'을 제어하는 방법이 필요해요. 바로 오늘 배울 연산자, 조건문, 반복문이 그 핵심 레시피랍니다! 변수가 데이터라는 '재료'였다면, 오늘 배울 내용들은 이 재료들을 어떻게 '조리'하고, 어떤 '순서'로 내놓을지 결정하는 '요리법'과 같아요! 👨‍🍳👩‍🍳

 

오늘 우리가 함께 탐험할 파이썬의 흐름 제어 마법은 다음과 같아요:

  • 계산과 비교의 기본, 연산자 (Operators) 🛠️
  • 똑똑한 선택의 기로, 조건문 (Conditional Statements) 🤔
  • 지루한 반복은 이제 그만! 반복문 (Loops) 🔄

자, 파이썬으로 생각하는 프로그램을 만들 준비, 되셨나요? 출발! 🚀

 


계산과 비교의 기본, 연산자 (Operators) 🛠️

연산자는 말 그대로 '연산'을 수행하는 특별한 기호들이에요. 더하기, 빼기 같은 간단한 계산부터, 값이 같은지 다른지 비교하는 것까지! 파이썬은 다양한 연산자를 제공해서 우리가 데이터를 자유자재로 다룰 수 있게 도와줍니다. 자바에서도 이미 경험하셨죠? +, -, == 같은 친구들 말이에요! 😉

 

1. 산술 연산자 (Arithmetic Operators): 사칙연산의 달인들!
가장 기본적인 연산자들이죠!

  • + (더하기), - (빼기), * (곱하기)
  • / (나누기 - 결과는 항상 float): 7 / 23.5
  • // (몫 연산자 - 정수 나누기의 몫): 7 // 23 (자바의 int a = 7/2; 와 비슷!)
  • % (나머지 연산자): 7 % 21
  • ** (거듭제곱 연산자): 2 ** 38 (2의 3승)
a = 10
b = 3

print(f"{a} + {b} = {a + b}")       # 10 + 3 = 13
print(f"{a} / {b} = {a / b}")       # 10 / 3 = 3.333...
print(f"{a} // {b} = {a // b}")     # 10 // 3 = 3
print(f"{a} % {b} = {a % b}")       # 10 % 3 = 1
print(f"2 ** 4 = {2 ** 4}")      # 2 ** 4 = 16

 

2. 비교 연산자 (Comparison Operators): 누가 크고 누가 작은가!

두 값을 비교해서 True (참) 또는 False (거짓)의 결과를 돌려줘요. 조건문에서 아주 중요하게 쓰인답니다!

  • == (같다)
  • != (다르다)
  • > (크다), < (작다)
  • >= (크거나 같다), <= (작거나 같다)
x = 5
y = 10

print(f"{x} == {y} 는? {x == y}")  # False
print(f"{x} != {y} 는? {x != y}")  # True
print(f"{x} < {y} 는? {x < y}")    # True

자바의 비교 연산자와 거의 동일하죠?

 

3. 논리 연산자 (Logical Operators): 그리고, 또는, 아니다!

여러 조건을 조합하거나, 조건의 참/거짓을 뒤집을 때 사용해요.

  • and (그리고): 두 조건이 모두 True일 때만 True (자바의 &&)
  • or (또는): 두 조건 중 하나라도 True이면 True (자바의 ||)
  • not (아니다): 조건의 결과를 반대로! TrueFalse로, FalseTrue로 (자바의 !)
age = 25
has_ticket = True

# 나이가 20살 이상이고 티켓이 있으면 입장 가능
if age >= 20 and has_ticket:
    print("입장 가능합니다!")
else:
    print("입장 불가능합니다.")

is_raining = False
if not is_raining:
    print("우산 없이 외출해도 좋아요!") # is_raining이 False이므로 not is_raining은 True

파이썬은 && 대신 and, || 대신 or를 사용해서 좀 더 읽기 편한 느낌이죠? 😊


똑똑한 선택의 기로, 조건문 (Conditional Statements) 🤔

프로그램이 항상 똑같은 순서로만 실행된다면 너무 단순하겠죠? 조건문은 특정 '조건'을 확인하고, 그 조건이 참(True)이냐 거짓(False)이냐에 따라 다른 코드를 실행하도록 만들어주는 마법 같은 도구예요! 🧙‍♀️ "만약 ~라면 이걸 하고, 아니라면 저걸 해!" 라고 컴퓨터에게 지시하는 거죠. 자바의 if, else if, else를 떠올려보세요!

 

1. if 문: 만약 ~라면!
가장 기본적인 조건문이에요. 조건이 True일 때만 특정 코드를 실행합니다.

temperature = 30
if temperature > 28:  # 콜론(:)을 잊지 마세요!
    print("날씨가 덥네요! 에어컨을 켜세요.") # 들여쓰기가 중요해요!

파이썬에서는 이 '어떤 코드를 실행할지'를 **들여쓰기(indentation)**로 구분해요. 이게 정말 중요하니 꼭 기억해주세요! ⭐ 자바에서는 {} 중괄호로 코드 블록을 구분했지만, 파이썬은 깔끔하게 들여쓰기로 해결한답니다.

 

2. if-else 문: 만약 ~라면, 그렇지 않다면!
조건이 True일 때 실행할 코드와, False일 때 실행할 코드를 모두 지정할 수 있어요.

score = 85
if score >= 90:
    print("A 학점입니다!")
else: # score < 90 인 경우
    print("A 학점은 아니네요. 조금 더 힘내세요!")

3. if-elif-else 문: 여러 갈래길에서의 선택!
여러 조건을 순서대로 확인하고 싶을 때 사용해요. elif는 "else if"의 줄임말이랍니다. 자바의 else if와 똑같은 역할을 해요!

money = 7000

if money >= 10000:
    print("택시를 탄다! 🚕")
elif money >= 5000: # 10000원 미만, 5000원 이상인 경우
    print("버스를 탄다! 🚌")
elif money >= 1000: # 5000원 미만, 1000원 이상인 경우
    print("지하철을 탄다! 🚇")
else: # 1000원 미만인 경우
    print("걸어간다... 🚶‍♂️")

이렇게 조건문을 사용하면 프로그램이 상황에 따라 유연하게 대처할 수 있게 된답니다!


지루한 반복은 이제 그만! 반복문 (Loops) 🔄

 

만약 똑같은 코드를 100번 실행해야 한다면? 😱 복사 붙여넣기를 100번 할 수는 없겠죠! 이럴 때 등장하는 것이 바로 반복문입니다. 반복문은 특정 코드 블록을 여러 번, 혹은 특정 조건이 만족될 때까지 자동으로 반복 실행해주는 아주 편리한 기능이에요. 자바의 for문과 while문을 기억하시나요? 파이썬에서도 비슷하지만 더 간결한 마법을 보여준답니다!

 

1. for 문: 정해진 횟수만큼, 혹은 목록 안의 모든 것을!
파이썬의 for문은 주로 리스트, 튜플, 문자열 같은 '순서가 있는 자료형(iterable)'의 각 요소를 하나씩 꺼내서 반복할 때 사용해요. 또는 range() 함수와 함께 사용하여 정해진 횟수만큼 반복할 수도 있습니다.

# 리스트의 모든 요소 출력하기
fruits = ["사과", "바나나", "딸기"]
for fruit in fruits: # fruits 리스트에서 하나씩 꺼내 fruit 변수에 담는다
    print(f"내가 좋아하는 과일: {fruit}")

# 0부터 4까지 5번 반복하기 (range(5)는 0, 1, 2, 3, 4를 의미)
for i in range(5): # i에는 0, 1, 2, 3, 4가 차례대로 들어감
    print(f"현재 숫자는 {i} 입니다.")

# 1부터 5까지 반복하기
for i in range(1, 6): # range(시작, 끝+1)
    print(f"카운트: {i}")

자바의 향상된 for문(for (String fruit : fruits))과 유사하면서도, range()를 통해 전통적인 for문(for (int i=0; i<5; i++))의 기능도 쉽게 구현할 수 있죠!

 

2. while 문: 조건이 참인 동안 계속!
while문은 특정 조건이 True인 동안 계속해서 코드 블록을 반복 실행해요. 그래서 반복을 멈출 수 있는 조건을 만들어주는 것이 매우 중요합니다! 안 그러면 무한 루프에 빠질 수 있어요! 🌀

count = 0
while count < 3: # count가 3보다 작은 동안 반복
    print(f"while 반복 중입니다. (count: {count})")
    count = count + 1 # count를 1씩 증가시켜 언젠가 조건이 False가 되도록!

print("while 반복이 끝났습니다.")

자바의 while문과 사용법이 거의 동일하죠? count = count + 1count += 1로도 쓸 수 있답니다. (이런 걸 할당 연산자라고 해요!)

알아두면 유용한 breakcontinue

  • break: 반복문 안에서 break를 만나면, 즉시 반복문을 완전히 빠져나옵니다.
  • continue: 반복문 안에서 continue를 만나면, 현재 반복문의 나머지 부분을 건너뛰고 다음 반복을 시작합니다.
# break 예시: 5를 만나면 반복 중단
for i in range(1, 11): # 1부터 10까지
    if i == 5:
        print("5를 찾았습니다! 반복을 중단합니다.")
        break
    print(i)

# continue 예시: 짝수만 출력 (홀수는 건너뛰기)
for i in range(1, 11):
    if i % 2 != 0: # 홀수이면
        continue   # 다음 반복으로 넘어감
    print(f"짝수 발견: {i}")

정리하며 📝

오늘은 파이썬 프로그램을 살아 숨쉬게 만드는 핵심 요소들, 바로 연산자, 조건문, 반복문에 대해 배웠습니다! 🚀

  • 연산자 (Operators) 🛠️: 데이터를 계산하고(+, -, *, /, //, %, **), 비교하고(==, !=, >, <), 논리적으로 결합(and, or, not)하는 도구들입니다. (자바의 연산자들과 비교하며 //, **, and, or 같은 파이썬의 특징을 기억해주세요!)
  • 조건문 (Conditional Statements) 🤔: if, elif, else를 사용하여 특정 조건에 따라 프로그램의 실행 흐름을 다르게 만들 수 있습니다. (파이썬의 핵심! 들여쓰기로 코드 블록을 구분한다는 점, 잊지 마세요! 자바의 {}와 비교!)
  • 반복문 (Loops) 🔄: for문과 while문을 사용하여 특정 작업을 반복적으로 수행할 수 있습니다. for...inrange()의 조합, while문의 조건 설정, 그리고 breakcontinue까지! (자바의 for, while과 비교하며 파이썬의 간결함을 느껴보세요!)

지난 시간에 배운 변수와 자료형이 '재료'였다면, 오늘 배운 연산자, 조건문, 반복문은 그 재료들을 다루는 '레시피'와 같아요. 이 세 가지 마법 도구만 잘 다룰 수 있어도, 여러분은 훨씬 더 복잡하고 유용한 프로그램을 만들 수 있게 됩니다! 🤩 마치 게임 캐릭터가 레벨업해서 새로운 스킬을 배우는 것과 같아요!

 

 

파이썬의 흐름 제어, 생각보다 어렵지 않죠? 자바에서의 경험이 있어서 더 쉽게 다가오셨을 수도 있겠네요! 😉 오늘 배운 연산자, 조건문, 반복문은 프로그래밍의 뼈대를 이루는 아주 중요한 개념들이니, 꼭 직접 코드를 작성해보면서 익숙해지는 시간을 가져보세요. 💻⌨️

 

오늘도 모두 정말 수고 많으셨습니다! 다음 시간에는 이 흐름 제어를 더욱 풍성하게 만들어 줄 파이썬의 '함수(Functions)'라는 강력한 마법을 함께 배워볼 거예요! 기대되시죠? 그때까지 모두 파이팅! 👋

https://abit.ly/lisbva