변수란?
변수명 = 변수에 저장할 값
# 변수의 예
a = 1
b =“Python”
c =[1,2,3]
변수를 만들때는 = assignment기호를 사용
C언어나 JAVA처럼 변수의 자료형을 함께 쓸 필요가 없다.
파이썬은 변수에 저장된 값을 스스로 판단하여 자료형을 알아낸다.
변수는 객체를 가리키는 것
객체 : 파이썬에 사용되는 모든 것
a=3이라고 가정하면, 3이라는 값을 가지는 정수 자료형(객체)이 자동으로 메모리에 생성
a는 변수이름, 3이라는 정수형 객체가 저장된 메모리 위치를 가리킨다.
변수a는 객체가 저장된 메모리의 위치를 가리키는 레퍼런스.
* 레퍼런스 카운트 : 객체를 가리키고 있는 변수의 개수
변수를 만드는 여러가지 방법
# 튜플 대입
a,b = (‘pyhton’,’life’)
(a,b) = ‘python’,’life’
# 리스트 변수
[a,b] = [‘python’,’life’]
# 여러개의 변수에 값은 값 대입
a = b = ‘python’
가비지 콜렉션 Garbage collection , 쓰레기 수집
: 레퍼런스 카운트가 0이 되는 순간 저장된 객체가 자동으로 사라진다.
즉 메모리에 생성된 변수 없애기
a = 3
b = 3
del(a)
del(b)
리스트를 변수에 놓고 복사
a = [1,2,3]
b = a
a[1] = 4
a
[1,4,3]
b
[1,4,3]
b 변수를 생성할때 a 와 같은 값을 가지도록 복사해 넣으면서, a 가 가리키는 리스트와는 다른 리스트를 가리키게 하는 방법
# [:] 이용하기
a =[1,2,3]
b = a[:] <- a리스트 전체를 복사하여 b에 대입
a[1] = 4
a
[1,4,3]
b
[1,2,3]
# copy모듈 이용
from copy import copy
b = copy(a) <- b=a[:]와 동일함
# 두 변수가 같은 값을 가지면서 다른 객체를 제대로 생성했는지 확인 하는 방법
b is a
False
서로 동일한 객체인지 아니인지 판단하여 참/거짓을 리턴함
'P-Language > Python' 카테고리의 다른 글
[8일차] While문 (0) | 2022.06.01 |
---|---|
[7일차] if문 (0) | 2022.05.31 |
[6일차] 자료형의 참과 거짓 (0) | 2022.05.28 |
[5일차] 집합 자료형 (0) | 2022.05.27 |
[4일차] 딕셔너리 자료형 (0) | 2022.05.26 |