1. 변수
파이썬에서 변수는 데이터를 저장할 수 있는 이름표 같은 것이다. 변수를 사용하면 어떤 값을 메모리에 저장하고 그 값을 나중에 참조하거나 변경할 수 있다.
1-1. 파이썬의 메모리 구조
- 프로그램이 실행되기 위해서 먼저 프로그램 자체가 메모리에 로드되어야 한다.
- 프로그램에서 사용되는 변수들을 저장할 메모리가 필요하다.
- 컴퓨터 운영체제는 프로그램 실행을 위해 메모리를 나누어 관리한다.
- 파이썬의 메모리 영역
- 코드 영역: 실행할 프로그램의 코드가 저장되는 영역
- 데이터 영역: 프로그램의 전역변수, 지역변수들이 저장되는 영역
- 스택 영역: 함수의 호출과 관계되는 지역변수, 매개변수가 저장되는 영역
- 힙 영역: 사용자가 직접 관리할 수 있는 메모리 영역, 메모리 공간이 동적으로 할당되고 해제된다.
1-2. 변수의 사용
"변수명 = 값" 형태로 사용한다
name = '김사과'
print(name)
age = 20
print(age)
print(name)
name = '반하나'
print(name)
1-3. 변수명 작성법
(1) 알파벳, 숫자, 언더바(_)로 구성할 수 있다.
(2) 숫자로 시작할 수 없다.
(3) 대소문자를 구분한다.
예) apple과 Apple은 서로 다른 변수로 취급한다.
(4) 예약어를 변수 이름으로 사용할 수 없다.
예) for, while, if 등
(5) 권장 사항
- 의미 있는 이름을 사용
- 두 단어를 표현할 경우 밑줄을 사용하여 단어를 구분하거나 다음 단어 시작을 대문자로 표현한다.
예) student_name 또는 studentName - 소문자로 시작하는 것이 관례
num = 10 # 스칼라(데이터 1개)를 저장하는 경우 관례적으로 변수의 이름은 소문자로 표현
Num = 20 # 두 단어를 합쳐서 표현하는 경우 -> myScore
NUM = 30
print(num)
print(Num)
print(NUM)
2. 변수의 자료형
파이썬의 변수는 다른 언어와 달리 명시적으로 자료형을 선언할 필요가 없고 값을 할당하면 자동으로 그 자료형이 결정된다. 또한 파이썬에서는 변수의 자료형이 동적이기 때문에 같은 변수에 다른 자료형의 값을 할당할 수 있다.
2-1. 주요 자료형 종류
(1) 정수형 (int) : 정수를 나타내는 자료형
예) age = 25
(2) 실수형 (float) : 소수점이 있는 수를 나타내는 자료형
예) pi = 3.14
(3) 문자열형 (str) : 문자나 텍스트를 나타내는 자료형이고 작은 따옴표나 큰 따옴표로 문자열을 감싸서 사용한다.
예) name = "John"
(4) 불린형 (bool) : True(참)와 False(거짓)를 나타내는 자료형
예) is_student = True
2-2. 컬렉션 타입의 자료형 종류
(1) 리스트 (list) : 여러 값을 순서대로 저장할 수 있는 자료 구조
예) [1, 2, 3, 4]
(2) 튜플 (tuple) : 리스트와 유사하지만 변경할 수 없는 자료 구조
예) (1, 2, 3)
(3) 딕셔너리 (dict) : 키(Key)-값(Value) 쌍을 저장하는 자료 구조
예) {'name': 'Alice', 'age': 25}
(4) 세트 (set) : 중복되지 않는 값을 저장하는 자료 구조
예) {1, 2, 3}
2-3. 자료형 확인하기
- type() 함수 활용
from typing import AsyncGenerator
name = '김사과'
age = 20
weight = 50.5
isLover = False
print(name)
print(age)
print(weight)
print(isLover)
# type(): 파이썬에서 객체의 타입(클래스)을 확인
print(type(name)) # <class 'str'>: 문자열
print(type(age)) # <class 'int'>: 정수
print(type(weight)) # <class 'float'>: 실수
print(type(isLover)) # <class 'bool'>: 참, 거짓
3. 변수의 삭제
파이썬에서 변수는 del 문을 사용해 지정된 변수를 제거하고 해당 메모리 공간을 해제할 수 있다. 변수를 삭제하면 해당 이름으로 변수에 더 이상 접근할 수 없게 된다.
print(name)
print(age)
print(weight)
print(isLover)
del isLover
print(isLover) # NameError: name 'isLover' is not defined
다음과 같은 코드에서 del 문을 사용하여 변수(name1)를 삭제하면 해당 변수에 연결된 메모리가 해제되지만 변수가 참조하던 값('김사과') 자체는 삭제되지 않는다. 따라서 print(name2)의 출력값은 여전히 김사과인 것이다.
name1 = '김사과'
name2 = name1
print(name1)
print(name2)
del name1
print(name2)
'파이썬 > 파이썬 기초 문법' 카테고리의 다른 글
파이썬 컬렉션 타입 (1) 리스트 (1) | 2024.09.26 |
---|---|
파이썬 문자열 다루기 (1) | 2024.09.25 |
파이썬의 출력 (0) | 2024.09.24 |
구글 코랩(Colab) 시작하기 (2) | 2024.09.22 |
파이썬 설치하기 (윈도우) (0) | 2024.09.22 |