일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- AI
- RNN
- CV
- map
- 회귀
- 크롤링
- 데이터분석
- 파이썬
- 앱개발
- 42서울
- 자연어처리
- 지정헌혈
- 머신러닝
- mnist
- 유데미
- pytorch
- 인공지능
- Computer Vision
- 선형회귀
- 딥러닝
- 코딩애플
- 선형대수학
- 42경산
- 피플
- 크롤러
- 플러터
- 모델
- Regression
- filtering
- Flutter
Archives
- Today
- Total
David의 개발 이야기!
얕은 복사 vs 깊은 복사 본문
반응형
1. Mutable 과 Immutable 의 정의
-> Mutable : 값이 변하는 리스트, 딕셔너리
-> Immutable : 값이 변하지 않는 숫자, 문자열, 튜플, boolean
2. 얕은 복사, 깊은 복사
2-1 얕은 복사란?
얕은 복사는 인스턴스가 메모리에 새로 생성되지 않는다. 즉, 값 자체를 복사하는 것이 아니라, 주소값을 복사하여 같은 메모리를 가리킨다.
2-2 깊은 복사란?
데이터를 통째로 복사하며, 복사된 두 객체는 독립적인 메모리를 차지한다.
예시 1) 리스트
a = [1, 2, 3]
b = a
print(a is b)
a = [1, 2, 3]
b = [1, 2, 3]
print(a is b)
a = [1, 2, 3]
b = a.copy()
print(a is b)
#결과
True
False
False
예시 2) 딕셔너리
a = {"a":1, "b":2}
b = a
print(a is b)
a = {"a":1, "b":2}
b = {"a":1, "b":2}
print(a is b)
a = {"a":1, "b":2}
b = a.copy()
print(a is b)
#결과
True
False
False
예시3 ) 튜플
a = (1, 2, 3)
b = a
print(a is b)
a = (1, 2, 3)
b = (1, 2, 3)
print(a is b)
# tuple은 copy 메소드 없음
#결과
True
False
예시4) 집합
a = set([1, 2, 3])
b = a
print(a is b)
a = set([1, 2, 3])
b = set([1, 2, 3])
print(a is b)
a = set([1, 2, 3])
b = a.copy()
print(a is b)
#결과
True
False
False
반응형
'파이썬 기초' 카테고리의 다른 글
딕셔너리 자료형 (0) | 2022.01.24 |
---|---|
튜플 자료형 (0) | 2022.01.24 |
리스트 자료형 (0) | 2022.01.24 |
파이썬 자료형 문자열 (0) | 2021.12.14 |
파이썬 자료형 숫자형 (0) | 2021.12.14 |
Comments