1. 변수란?
변수란 데이터를 저장 하는 이름표 이다. 데이터 값을 RAM에 저장하는 이름표.
- 변수는 값을 RAM(메모리)에 값을 저장하고 재사용 하거나 변경 할 수 있게 도움.
- 파이썬에서는 변수에 값(객체)의 참조(reference)를 저장 즉, 실제 데이터가 저장된 위치를 가르키는 역할
- 변수에 저장된 값은 RAM에 일시적으로 저장되므로 휘발성이며, 프로그램이 종료되면 메모리에서 사라진다.
💡 핵심 요약
- 변수 = 메모리에 저장된 값의 이름표
- 변수는 **참조(reference)**를 저장한다 (값 자체 아님)
- 변수는 RAM에 저장되며 휘발성
2. 변수의 특징
| 특징 | 설명 |
| 이름을 붙여서 값을 저장 | 숫자, 문자열, 리스트 등 다양한 자료형을 담을 수 있음 |
| 재사용 가능 | 변수 이름을 이용해 값에 다시 접근할 수 있음 |
| 값 변경 가능 | 같은 변수에 다른 값을 덮어쓸 수 있음 |
| 동적 타이핑 | 파이썬은 변수의 자료형을 자동으로 판단함 (int인지 float인지 등) |
| 값 교환가능 (Swap) | 두 변수에 저장된 값을 간단히 서로 바꿀 수 있음(예: a, b = b, a) |
예시 코드
이름을 붙여서 값을 저장
# 변수는 값을 저장할 수 있다
name = "Alice"
age = 25
height = 162.5
is_student = True
print(name) # Alice
print(age) # 25
print(height) # 162.5
print(is_student) # True
재 사용 가능
# 같은 값을 여러 변수에 할당할 수도 있다
x = y = z = 0
print(x, y, z) # 0 0 0
# 여러 변수를 한 줄에 동시에 선언할 수 있다
a, b, c = 1, 2, 3
print(a, b, c) # 1 2 3
값 변경 가능
# 변수는 값을 재할당(변경)할 수 있다
score = 90
print(score) # 90
score = 100 # 값 변경
print(score) # 100
동적 타이핑
x = 10 # 정수
x = "hi" # 문자열
x = [1, 2] # 리스트
변수 선언시 자료형을 따로 지정하지 않아도 자동으로 선택 됨.
변수 값 교환 (Swap)
a = 10
b = 20
a, b = b, a
print(a) # 20
print(b) # 10
해당 문법은 파이썬만의 특징으로, 값을 빠르고 간결하게 교환할 때 유용
3. 변수 이름 규칙 (파이썬 기본 문법)
변수 이름을 만들 때는 문법의 규칙을 지키자.
✅ 사용할 수 있는 것:
- 알파벳 (a-z, A-Z)
- 숫자(0-9) 단, 숫자로 시작 하면 안됨
- 밑줄 _
❌ 사용할 수 없는 것
- 특수문자 (!, @, #, $, %, ... 등등)
- 공백 (first name => first_name)
- 파이썬 예약어 (if, for, class, ... 등등)
📌 예시:
user1 = "Alice" # ✅ OK
_abc = 10 # ✅ OK
2score = 50 # ❌ 숫자로 시작
user-name = "Bob" # ❌ 하이픈(-)은 안 됨
4. 변수 표기법 스타일 (Naming Style)
같은 단어라도 어떻게 연결해서 쓸 것인가에 대한 스타일 가이드
✅ snake_case ← 파이썬 권장 스타일
- 소문자만 사용 + 단어 사이에 _
- 파이썬의 공식 스타일 가이드(PEP 8)에서 권장
- 예시:
user_name = "Alice"
max_score = 100
is_logged_in = True
✅ camelCase ← 다른 언어에서는 자주 씀 (파이썬에서는 지양)
- 첫 단어는 소문자, 이후 단어는 대문자
- 예시:
userName = "Alice" # ❌ 파이썬에서는 비추천
isLoggedIn = True # ❌
5. 마무리 요약
변수 이름은 문법 규칙 + 스타일 가이드 둘 다 중요하다!
- 문법 규칙을 지켜야 오류 없이 실행되고
- 표기법 스타일을 지켜야 읽기 쉽고 협업하기 좋다!
변수 표기법 요약
| 항목 | 추천 | 스타일 예시 |
| 변수 이름 | snake_case | user_name, item_price |
| 함수 이름 | snake_case | get_data(), print_info() |
| 클래스 이름 | PascalCase | User, BankAccount |
| 상수 이름 | UPPER_CASE | PI = 3.14, MAX_SIZE = 100 |
변수 이름 실수 방지 팁
- ✅ user_name ← 올바른 변수명
- ❌ user-name ← 하이픈은 문법 에러
- ❌ 1name ← 숫자로 시작 ❌
- ❌ print = "hello" ← 내장 함수 이름을 변수명으로 사용 ❌
다른 기초를 알고 싶다면? 여기로
'딥러닝 > 프로그래밍 기초' 카테고리의 다른 글
| [프로그래밍 기초]Part 4. 파이썬 기초 5대 영양소 반복문 (Loops) (6) | 2025.07.11 |
|---|---|
| [프로그래밍 기초]Part 3. 파이썬 기초 5대 영양소 조건문 (Conditionals) (2) | 2025.07.11 |
| [프로그래밍 기초]Part 1. 파이썬 기초 5대 영양소 자료형 (Data Types) (10) | 2025.07.10 |
| [프로그래밍 기초] 5대 구성 요소 (8) | 2025.07.10 |
| [프로그래밍 기초] 프로그래밍 패러다임 (15) | 2025.07.09 |