
1주차 월요일은 파이썬의 기본 문법입니다.
파이썬에서는 변수선언시 자료형(type)을 따로 명시하지 않고, 값을 할당(=연산자)하면 자동으로 변수가 생성됩니다.
x = 10 # 정수형 (int)
y = 3.14 # 실수형 (float)
name = "Python" # 문자열 (str)
is_valid = True # 논리형 (bool)
파이썬에서는 동시에 여러 개의 변수를 선언&할당할 수도 있고, 여러 개의 변수에 같은 값을 동시에 선언&할당할 수도 있습니다.
a, b, c = 1, 2, 3
print(a, b, c) # 1 2 3
x = y = z = 100
print(x, y, z) # 100 100 100
type() 함수를 사용하면 자료형을 확인할 수 있습니다.
x = 10
print(type(x)) # <class 'int'>
y = 3.14
print(type(y)) # <class 'float'>
name = "Hello"
print(type(name)) # <class 'str'>
is_valid = True
print(type(is_valid)) # <class 'bool'>
파이썬의 변수 이름에는 다음과 같은 규칙이 있습니다.
✅ 사용 가능한 경우
영문자(a-z, A-Z), 숫자(0-9), 밑줄(_) 사용 가능
변수 이름은 숫자로 시작할 수 없음
대소문자를 구별함 (age와 Age는 다른 변수)
❌ 사용 불가능한 경우
숫자로 시작하는 변수 (1st_var ❌)
파이썬의 예약어(if, for, while, def, class 등)
특수 문자(@, #, $, % 등)
변수가 저장된 메모리 주소를 확인하려면 id() 함수를 사용합니다.
a = 10
b = a
print(id(a), id(b)) # 같은 메모리 주소 (값을 공유)
b = 20
print(id(a), id(b)) # 다른 메모리 주소 (새로운 값 할당)
파이썬에서는 한 변수에 다른 자료형의 값을 할당할 수 있습니다. 이를 동적 타이핑이라고 부릅니다.
x = 10 # 정수형
x = "Hello" # 문자열 (자료형 변경)
print(x) # Hello
함수 내에서 선언된 변수는 지역 변수이며, 함수 밖에서는 사용할 수 없습니다.
def my_function():
local_var = "I'm local"
print(local_var)
my_function()
# print(local_var) # 오류 발생 (함수 밖에서 사용 불가능)
함수 바깥에서 선언된 변수는 전역 변수이며, 함수 내에서도 사용 가능합니다.
global_var = "I'm global"
def my_function():
print(global_var) # 전역 변수 사용 가능
my_function() # I'm global
함수 안에서 전역 변수 값을 변경하려면 global 키워드를 사용해야 합니다.
x = 10
def change_x():
global x
x = 20 # 전역 변수 값 변경
change_x()
print(x) # 20
변수를 삭제하려면 del 키워드를 사용합니다.
a = 100
del a # 변수 삭제
# print(a) # 오류 발생 (삭제된 변수 접근 불가)
여러개의 값을 한번에 변수에 할당하는 방법입니다.
data = (1, 2, 3)
x, y, z = data
print(x, y, z) # 1 2 3
리스트는 여러 개의 값을 순서대로 저장하는 가변(Mutable) 자료형입니다.
✅ 특징
순서(인덱스) 기반으로 값 저장 (0부터 시작하는 인덱스 사용)
중복된 값 허용
가변형(Mutable): 리스트 내부 요소를 변경할 수 있음
다양한 데이터 타입 혼합 가능
# 리스트 생성
my_list = [1, 2, 3, "hello", 5.5]
print(my_list) # [1, 2, 3, 'hello', 5.5]
# 요소 접근 (인덱싱)
print(my_list[0]) # 1
print(my_list[-1]) # 5.5 (마지막 요소)
# 리스트 요소 변경 (mutable)
my_list[1] = 100
print(my_list) # [1, 100, 3, 'hello', 5.5]
# 리스트 길이 확인
print(len(my_list)) # 5
✅ 리스트 주요 메서드
my_list.append(6) # 리스트 끝에 요소 추가
my_list.insert(2, "Python") # 특정 위치(2번 인덱스)에 값 삽입
my_list.remove(100) # 특정 값 제거
print(my_list.pop()) # 마지막 요소 꺼내기 (리스트에서 삭제)
딕셔너리는 키(key)와 값(value) 쌍으로 데이터를 저장하는 자료형입니다.
✅ 특징
# 딕셔너리 생성
my_dict = {"name": "Alice", "age": 25, "city": "Seoul"}
# 요소 접근
print(my_dict["name"]) # Alice
print(my_dict.get("age")) # 25 (키가 없을 경우 None 반환)
# 값 변경
my_dict["age"] = 30
print(my_dict) # {'name': 'Alice', 'age': 30, 'city': 'Seoul'}
# 새 키-값 추가
my_dict["job"] = "Engineer"
# 딕셔너리 길이 확인
print(len(my_dict)) # 4
✅ 딕셔너리 주요 메서드
print(my_dict.keys()) # 키 목록 반환
print(my_dict.values()) # 값 목록 반환
print(my_dict.items()) # (키, 값) 튜플 리스트 반환
# 특정 키 삭제
del my_dict["city"]
# 모든 요소 제거
my_dict.clear()