본문 바로가기
멋쟁이사자처럼 AI스쿨

데이터의 속성값을 출력하는 함수와 얕은 복사, 깊은 복사(파이썬 강의 Day1)

by 헬푸밍 2023. 1. 2.

데이터 속성을 출력하는 함수

- id(), type(), print(), sys.getsizeof()

 

1. print() : 식별자에 저장된 데이터 출력

print()함수에 대한 설명은...

2023.01.02 - [멋쟁이사자처럼 AI스쿨] - 파이썬 강의 Day1(변수선언)

 

파이썬 강의 Day1(변수선언)

파이썬은 컴퓨터의 CPU, RAM, SSD(HDD)를 사용하는 방법이다... 그러므로 우리는 파이썬의 문법을 학습해야한다! 변수선언 변수선언은 RAM을 사용하는 문법으로 메모리에 저장공간을 만들어 데이터를

helpming.tistory.com

을 참조해주세요!

 

2. type() : 식별자의 타입 출력

type()함수에 대한 설명은...

2023.01.02 - [멋쟁이사자처럼 AI스쿨] - 파이썬 강의 Day1(데이터 타입)

 

파이썬 강의 Day1(데이터 타입)

파이썬은 컴퓨터의 CPU, RAM, SSD(HDD)를 사용하는 방법이다... 그러므로 우리는 파이썬의 문법을 학습해야한다! 데이터타입 데이터타입은 RAM을 효율적으로 사용하는 문법이다. - 기본 데이터타입 - i

helpming.tistory.com

을 참조해주세요!

 

3. sys.getsizeof() : 데이터의 저장공간크기 출력

    -sys.getsizeof()함수를 사용하기 위해선 sys패키지를 import해야한다.

import sys

data = [1, 2, 3, '가', '나']
sys.getsizeof(data)

다음과 같이 data의 저장공간 크기는 96바이트 인 것을 확인할 수 있다.

 

4. id() : 식별자의 주소값 출력

data = [1, 2, 3, '가', '나']
id(data)

아래와 같이 주소값을 확인할 수 있다.


- 얕은복사 : 주소값을 복사하는 것(변수 선언으로 복사)

- 깊은복사 : 데이터를 복사하는 것(.copy()함수로 복사)

data1 = [1, 2, 3]
data2 = data1 # 얕은복사
data3 = data1.copy() # 깊은복사
print(data1, data2, data3)
data1[1] = 4
print(data1, data2, data3)

data2는 얕은복사를 한 것이고 data3는 깊은복사를 한 것이다.

얕은복사의 경우 데이터를 변경하면 같은 데이터를 공유하는 데이터도 같이 바뀐다.

깊은복사는 데이터가 복사되는 것이기 때문에 바꾸고자 하는 데이터만 바꿀 수 있다.

 

위 코딩 과정을 그림으로 나타내면 다음과 같다.

 


데이터 속성과 속성을 기반으로 한 얕은복사, 깊은복사에 대해 알아보았습니다.

 

잘 이해하셨나요?

 

그럼 다음시간에 봐요!

댓글