python

Bootcamp Day02 Python ① 변수

cinnamonbrown 2026. 5. 21. 22:49

1. 변수란?

변수는 프로그램에서 데이터를 저장하기 위해 사용하는 이름으로, 메모리에 저장된 값을 참조하는 역할을 한다.


2. Python에서 변수는 어떻게 동작하는가?

먼저 객체(object) 가 메모리(heap)에 생성되고,
변수는 그 객체를 참조(reference) 한다.
예를 들어,

x = 10

 

이 코드가 실행되면

 

1️⃣ 10이라는 정수 객체가 메모리에 생성된다
2️⃣ x라는 이름이 만들어진다
3️⃣ x10객체를 가리킨다

 


3. 변수는 어디에 저장되는가?

Python에서 숫자, 문자열, 리스트 같은 데이터는 주로 Heap 메모리 영역에 올라간다.

 

예를 들어:

a = "memory"


이 코드는 문자열 객체 "memory"Heap 영역에 생성되고,


변수 a는 그 객체를 참조하게 된다.

 

여기 ”memory”객체 내부에는

  • type
  • value
  • reference count

같은 메타 정보도 함께 존재한다.


4. 자료형

  • 데이터를 저장하고 처리하기 위한 값의 종류
  • 파이썬은 동적 타입 언어이기 때문에, 다른 언어와 달리 자료형을 직접 선언하지 않아도 자동으로 결정된다.



4.1 기본 자료형

① 숫자형

  • int : 정수형 ex. 7, 24, 100
  • float : 실수형 ex. 3.14, -0.4

② 문자열형(str)

  • 문자열 : 글자들의 집합
  • 작은 따옴표()와 큰따옴표() 둘 다 사용 가능하다

③ 불린형 (bool)

  • 참(True) 또는 거짓(False) 값을 가짐
  • 조건문 등에 많이 사용

4.2 Collection 자료형

1. List

a = [10,20,30,20]
  • 순서 🅾️
  • 수정 🅾️
  • 중복 🅾️

2. Tuple

b = (10,20,30)
  • 순서 🅾️
  • 수정 ❌ (읽기 전용)

3. Dictionary

student = {
    "name": "apple",
    "no": 7
}
  • key-value 구조
  • key 중복 ❌

4. Set

s = {10,20,30,20}

 

👉 출력

{10,20,30}
  • 중복 ❌
  • 순서 ❌
  • 수정 🅾️

5. 자료형 변환

자료형은 다른 타입으로 변환할 수 있다.

 

 

이 경우 a 자체가 바뀌는 거이 아니라

 

기존 10(int) 를 기반으로 새러운 10.0(float) 가 생성되고 b가 그 객체를 참조하게 된다.


6. 변수 삭제(del)와 가비지 컬렉션(Garbage Collection)

변수는 del로 삭제할 수 있다

isLover = False

del isLover

 

이렇게 되면 변수 이름이 제거 된다.


만약 해당 객체를 참조하는 변수가 더 이상 없다면,

참조 횟수(refCount)0이 되고 Python이 메모리에서 정리 대상이라고 판단한다.

 

즉, 객체를 참조하는 변수가 하나도 없을 때 삭제될 수 있다.

 

그런데 여기서 변수 이름이 삭제되었다고 객체가 바로 사라지는 것은 아니다.



다음 예시를 살펴보자

name1 = "김사과"
name2 = name1

del name1
print(name2)

 

👉 실행결과

김사과

 

 

이 경우 ”김사과” 객체는 name2가 여전히 참조 중이기 때문에 삭제되지 않는다.