PythonPython 기초 · 1입문

파이썬 시작하기 — 변수와 자료형

Python변수자료형입문기초

파이썬을 배워야 하는 이유

AI·데이터 분석·웹 개발·자동화 — 지금 가장 많이 쓰이는 언어입니다. 문법이 영어에 가까워 처음 배우기도 쉽습니다.

이 시리즈에서는 LLM API 개발 시리즈를 이해하기 위한 파이썬 핵심 개념을 빠르게 익힙니다.


설치 확인

python --version    # Python 3.11.x 이상 권장
python3 --version   # macOS/Linux에서
# 간단한 실행 테스트
python -c "print('Hello, Python!')"

변수: 값을 저장하는 이름표

name = "철수"          # 문자열
age = 25              # 정수
height = 175.5        # 실수
is_student = True     # 불리언

print(name)           # 철수
print(age)            # 25

파이썬은 타입을 직접 쓰지 않습니다. 값을 보고 자동으로 판단합니다.


기본 자료형 4가지

flowchart LR
    subgraph TYPES["파이썬 기본 자료형"]
        direction TB
        T1["int (정수)\n10, -5, 100"]
        T2["float (실수)\n3.14, -0.5, 1.0"]
        T3["str (문자열)\n'안녕', \"Hello\""]
        T4["bool (불리언)\nTrue, False"]
    end
# 타입 확인
print(type(42))          # <class 'int'>
print(type(3.14))        # <class 'float'>
print(type("안녕"))       # <class 'str'>
print(type(True))        # <class 'bool'>

숫자 연산

a = 10
b = 3

print(a + b)   # 13   더하기
print(a - b)   # 7    빼기
print(a * b)   # 30   곱하기
print(a / b)   # 3.333... 나누기 (항상 float)
print(a // b)  # 3    몫 (소수점 버림)
print(a % b)   # 1    나머지
print(a ** b)  # 1000 거듭제곱

문자열 다루기

greeting = "안녕하세요"
name = "파이썬"

# 연결
print(greeting + ", " + name + "!")  # 안녕하세요, 파이썬!

# 길이
print(len(greeting))   # 5

# 인덱싱 (0부터 시작)
print(greeting[0])     # 안
print(greeting[-1])    # 요  (뒤에서 첫 번째)

# 슬라이싱
print(greeting[0:3])   # 안녕하

# 반복
print("=" * 20)        # ====================

f-string: 변수를 문자열에 넣기

name = "철수"
age = 25
score = 87.5

# f-string (가장 권장하는 방법)
print(f"이름: {name}, 나이: {age}세")
print(f"점수: {score:.1f}점")     # 소수점 1자리
print(f"나이 + 10: {age + 10}세") # 표현식 사용 가능
# 자주 쓰는 형식
pi = 3.14159
print(f"{pi:.2f}")    # 3.14     소수점 2자리
print(f"{1234567:,}") # 1,234,567 천 단위 콤마
print(f"{0.75:.0%}")  # 75%      백분율

형 변환

# 문자열 → 숫자
age_str = "25"
age = int(age_str)    # 25 (정수)
price = float("9.99") # 9.99 (실수)

# 숫자 → 문자열
num = 42
text = str(num)       # "42"

# 실수 → 정수 (소수점 버림)
x = int(3.9)          # 3 (반올림 아님!)

사용자 입력 받기

name = input("이름을 입력하세요: ")    # 항상 문자열로 받음
print(f"안녕하세요, {name}님!")

age = int(input("나이를 입력하세요: ")) # 정수로 변환
print(f"내년이면 {age + 1}세가 되시네요.")

None: 값이 없음을 표현

result = None

print(result)           # None
print(result is None)   # True
print(type(result))     # <class 'NoneType'>

# 함수가 아무것도 반환하지 않으면 자동으로 None
def greet(name):
    print(f"안녕, {name}!")
    # return 없음

value = greet("철수")  # "안녕, 철수!" 출력
print(value)           # None

변수 이름 규칙

# ✅ 좋은 변수명
user_name = "김철수"       # 단어 사이 언더스코어
total_price = 50000
is_logged_in = True

# ❌ 나쁜 변수명
a = "김철수"               # 의미 없음
UserName = "김철수"         # 파이썬 스타일 아님 (클래스용)
1st_item = "사과"          # 숫자로 시작 불가 (에러!)

파이썬 관례: 소문자 + 언더스코어 (snake_case)


자주 하는 실수

# 문자열과 숫자 더하기
age = 25
print("나이: " + age)          # ❌ TypeError
print("나이: " + str(age))      # ✅ "나이: 25"
print(f"나이: {age}")           # ✅ f-string 사용

# 정수 나눗셈
print(7 / 2)    # 3.5  (float)
print(7 // 2)   # 3    (int, 나머지 버림)

정리

자료형예시용도
int42, -10개수, 나이, 순서
float3.14, -0.5가격, 비율, 좌표
str"안녕", 'hi'텍스트, 이름
boolTrue, False조건, 플래그
NoneNone값 없음 표현

다음 편에서는 조건문과 반복문 — 코드가 상황에 따라 다르게 동작하게 만드는 방법을 배웁니다.

궁금한 점이 있으신가요?

협업·의뢰는 아래로, 가벼운 소통은 인스타그램 @bluefox._.hi도 환영이에요.