데이터 엔지니어링

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

Big Byte 2025. 5. 7. 23:06

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

 파이썬 🐍 ! 변수, 상수, 리터럴, 자료형 완전 정복!

 

안녕하세요, 여러분! ✨

지난 시간에는 자바(Java)의 세계에서 TCP 소켓 프로그래밍이라는 깊고도 중요한 주제를 함께 파헤쳤었죠! 🖥️↔️💻 서버와 클라이언트가 마치 손을 맞잡듯 데이터를 주고받는 원리를 배우면서, ServerSocket이니 InputStream이니 하는 용어들과 씨름하며 직접 연결의 다리를 놓았던 기억, 아직 생생하시죠? 🛠️ 자바로 네트워크의 견고한 기반을 다지는 값진 시간이었습니다!

 

자바라는 든든한 무기를 통해 객체지향 프로그래밍과 네트워크의 근본을 이해했다면, 이제는 또 다른 강력하고 매력적인 도구를 만나볼 시간입니다! 바로 코딩 계의 팔방미인 🎨, 파이썬(Python) 입니다! "어? 자바 잘 배우고 있었는데 갑자기 왜 파이썬이냐구요? 🤔" 라고 생각하실 수도 있지만, 파이썬은 마치 마법 지팡이처럼 배우기 쉽고 빠르게 아이디어를 현실로 만들 수 있게 도와주는 언어랍니다. 🧙‍♂️ 특히 지난 시간에 자바로 구현했던 TCP 소켓 프로그래밍도 파이썬으로는 훨씬 간결하고 직관적으로 표현할 수 있다는 사실! (이건 나중에 살짝 맛보기로 하고요 😉)

 

자바가 튼튼한 골격을 만드는 정교한 엔지니어링 도구였다면, 파이썬은 그 위에 다채로운 색을 입히고 빠르게 형태를 잡아가는 예술가의 붓과 같다고 할까요? 🖌️ 이 새로운 도구로 우리는 또 어떤 멋진 작품(프로그램)들을 만들어낼 수 있을까요?

오늘 우리가 함께 탐험할 파이썬의 기초 세계는 다음과 같아요:

  • 데이터를 담는 마법 상자, 변수 (Variables) 📦
  • 변하지 않는 약속 (하지만 파이썬에서는 조금 다른), 상수 (Constants) 📜
  • 값 그 자체의 순수한 모습, 리터럴 (Literals)
  • 데이터의 다양한 옷, 자료형 (Data Types) 👚👕👖

자, 파이썬의 매력에 퐁당 빠질 준비되셨나요? 출발! 💨

데이터를 담는 마법 상자, 변수 (Variables) 📦

프로그래밍의 세계에서 '변수'는 마치 이름표가 붙은 상자와 같아요. 이 상자 안에는 숫자, 글자, 또는 더 복잡한 형태의 데이터들을 담을 수 있죠. 그리고 필요할 때마다 상자에 붙은 이름표(변수명)를 불러 내용물을 사용하거나 바꿀 수 있습니다.

예를 들어, 게임 캐릭터의 이름을 저장하고 싶다면?

character_name = "파이썬 용사"
level = 1
hp = 100

여기서 character_name, level, hp가 바로 변수입니다! "파이썬 용사"라는 글자, 숫자 1, 숫자 100이라는 값을 각각의 이름표가 붙은 상자에 쏙 넣어둔 거죠.

 

파이썬 변수의 멋진 점 중 하나는, 상자에 어떤 종류의 물건을 담을지 미리 말하지 않아도 된다는 거예요! (이를 동적 타이핑이라고 합니다.) 그냥 이름 = 값 형태로 쓱 넣어주면 파이썬이 알아서 "아하, 이건 글자구나!", "오, 이건 숫자네!" 하고 똑똑하게 처리해준답니다. 👍 자바에서는 String characterName = "자바 용사"; 처럼 미리 자료형을 선언해야 했지만, 파이썬은 훨씬 유연하죠!

 

변하지 않는 약속 📜, 상수 (Constants) (하지만 파이썬에서는 조금 달라요!)

'상수'는 변수와 비슷하지만, 한 번 값을 정하면 절대로 바뀌지 않는 '변하지 않는 값'을 의미해요. 마치 "이 돌에 새겨진 약속은 영원히 변치 않으리!" 같은 느낌이죠. 🗿 예를 들어 원주율(π) 값이나, 게임에서 최대 생명력 같은 값들이 상수로 쓰일 수 있습니다. 자바에서는 final 키워드를 사용해서 상수를 만들었었죠? (예: final double PI = 3.14;)

 

하지만 여기서 파이썬의 작은 비밀! 🤫 파이썬에는 다른 언어들처럼 '절대 바꿀 수 없는' 엄격한 의미의 상수는 공식적으로 존재하지 않아요. 대신, 프로그래머들끼리의 약속으로 "이건 상수처럼 쓸 거니까 바꾸지 말자!"라는 의미로 변수명을 모두 대문자로 적습니다.

PI = 3.14159
MAX_CONNECTIONS = 10

이렇게 PIMAX_CONNECTIONS처럼 대문자로 이름을 지으면, 다른 개발자들이 "아, 이건 중요한 값이니까 함부로 바꾸면 안 되겠구나!" 하고 인식하게 됩니다. 일종의 신사협정 같은 거죠! 🤝

 

값 그 자체의 순수한 모습 ✨, 리터럴 (Literals)

리터럴은 아주 간단해요! 그냥 우리가 코드에 직접 적는 '값 그 자체'를 의미합니다. "이게 무슨 말이지? 🤔" 싶으시죠?

age = 30          # 여기서 30이 정수 리터럴
name = "엘리스"   # 여기서 "엘리스"가 문자열 리터럴
is_active = True  # 여기서 True가 불리언 리터럴
pi_value = 3.14   # 여기서 3.14가 실수 리터럴

위 코드에서 변수 age에 할당된 숫자 30, 변수 name에 할당된 글자 "엘리스" 등이 바로 리터럴입니다. 변수라는 상자에 담기기 전의, 날것 그대로의 데이터 값이라고 생각하면 쉬워요! 마치 상점 진열대에 놓인 사과 🍎, 바나나 🍌 그 자체를 보는 것과 같죠. 이건 자바를 배울 때도 마찬가지였던 개념이죠?

 

데이터의 다양한 옷 👚👕👖, 자료형 (Data Types)

 

우리가 다루는 데이터는 그 종류가 아주 다양해요. 숫자일 수도 있고, 글자일 수도 있고, 참/거짓을 나타내는 값일 수도 있죠. 파이썬은 이런 다양한 종류의 데이터를 효과적으로 다룰 수 있도록 여러 가지 '옷', 즉 자료형을 제공합니다. 데이터의 성격에 맞는 옷을 입혀줘야 프로그램이 제대로 돌아가겠죠? 자바에서도 int, String, boolean 같은 자료형들을 열심히 배웠었잖아요! 파이썬의 자료형 친구들은 어떤 모습일까요?

파이썬의 대표적인 기본 자료형 친구들을 만나볼까요?

  1. 숫자형 (Numbers):
    • 정수 (int): 말 그대로 소수점 없는 깔끔한 숫자! (예: 10, -5, 0)
      my_score = 100
      temperature = -5
    • 실수 (float): 소수점이 있는 숫자! (예: 3.14, -0.5, 2.718)
    • pi_approx = 3.14
      height = 175.5
  2. 문자열 (String): 글자들의 나열! 작은따옴표(')나 큰따옴표(")로 감싸서 표현해요. (예: "안녕하세요", 'Python is fun!')
  3. 불리언 (Boolean): 참(True) 또는 거짓(False) 딱 두 가지 값만 가지는 심플한 친구! 조건문이나 반복문에서 아주 중요한 역할을 해요. ✅❌ (자바의 boolean과 똑같죠? 다만 첫 글자가 대문자네요!)
    is_game_over = False
    has_item = True
  4. 리스트 (List): 여러 개의 데이터를 순서대로 담을 수 있는 만능 주머니! 대괄호([])를 사용하고, 안의 내용물을 바꿀 수 있어요(mutable). 자바의 ArrayList와 비슷하다고 생각할 수 있지만, 훨씬 더 유연하게 다양한 타입의 데이터를 담을 수 있답니다!
    my_items = ["검", "방패", "물약", 100] # 문자, 숫자 다 섞어 담을 수 있어요!
    empty_list = []
  5. 튜플 (Tuple): 리스트와 비슷하지만, 한 번 만들면 안의 내용물을 바꿀 수 없는(immutable) 조금 더 엄격한 친구! 소괄호(())를 사용해요. 고정된 값들의 묶음에 유용하죠.
    coordinates = (10, 20, 30) # x, y, z 좌표처럼 고정된 값에 사용
     
  6. 딕셔너리 (Dictionary): '키(Key)'와 '값(Value)'을 한 쌍으로 묶어서 저장하는 똑똑한 자료형! 중괄호({})를 사용하고, 키를 통해 값을 빠르게 찾아올 수 있어요. 마치 사전에서 단어를 찾는 것과 같아요! 📚 자바의 HashMap과 유사한 역할을 합니다
    player_info = {"name": "번개마법사", "level": 50, "skill": "파이어볼"}
    print(player_info["name"]) # "번개마법사" 출력

 

이 외에도 집합(Set) 등 다양한 자료형이 있지만, 오늘은 이 정도만 알아도 파이썬 세계로 첫발을 내딛는 데 충분합니다! 파이썬은 변수에 값을 할당할 때 알아서 자료형을 판단해주기 때문에 (동적 타이핑!), 우리는 어떤 자료형이 있는지 개념만 잘 이해하고 있으면 된답니다. type() 함수를 쓰면 어떤 자료형인지 직접 확인할 수도 있어요!

num = 100
print(type(num))  # 결과: <class 'int'>

message = "파이썬 최고!"
print(type(message)) # 결과: <class 'str'>

 

정리하며 📝

오늘은 자바에 이어 파이썬이라는 새로운 세계의 입문식을 치렀습니다! 🗺️

  • 변수 (Variables): 데이터를 저장하는 이름표 붙은 상자 🏷️📦. 언제든 다른 값으로 바꿀 수 있어요. (자바와 달리 자료형 선언이 필요 없다는 점!)
  • 상수 (Constants): 파이썬에서는 '대문자로 이름을 짓는 약속'을 통해 변하지 않는 값임을 표시해요 📜. (자바의 final과 비교해보세요!)
  • 리터럴 (Literals): 코드에 직접 쓰이는 순수한 데이터 값 그 자체 💎 (예: 100, "안녕", True).
  • 자료형 (Data Types): 데이터의 종류를 나타내는 옷 👚 (정수, 실수, 문자열, 불리언, 리스트, 튜플, 딕셔너리 등). (자바의 자료형들과 비교하며 공통점과 차이점을 느껴보세요!)

이 기본기들이 탄탄해야 앞으로 배울 파이썬의 다양한 마법(함수, 클래스, 모듈 등)을 자유자재로 구사할 수 있게 됩니다! ✨ 마치 튼튼한 기초 공사 없이 멋진 건물을 지을 수 없는 것처럼요! 🏗️

 

파이썬과의 첫 만남, 어떠셨나요? 자바를 통해 프로그래밍의 기본 원리를 익히셨다면, 파이썬의 간결함과 유연함에 또 다른 재미를 느끼실 수 있을 거예요! 오늘 배운 내용들을 차근차근 복습하고 직접 코드를 입력해보면서 파이썬과 친해지는 시간을 가져보시길 바랍니다! 💻⌨️

 

오늘도 모두 정말 수고 많으셨습니다! 다음 시간에도 더 흥미롭고 유용한 파이썬 이야기로 돌아올게요! 그때까지 모두 파이팅! 👋


https://abit.ly/lisbva