>  기사  >  백엔드 개발  >  파이썬 학습 일기

파이썬 학습 일기

巴扎黑
巴扎黑원래의
2017-06-23 14:46:431157검색

1. 숫자 복사

import copy
# ######数字、字符串######
n1 = 123
print(id(n1))
n2 = n1
print(id(n2))

###浅拷贝###
n2 = copy.copy(n1)
print(id(n2))

###深拷贝###
n3 = copy.deepcopy(n1)
print(id(n3))

C:Users811314AppDataLocalProgramsPythonPython35-32python.exe C:/homework/day3/1.py
492322480
492322480
492322480

프로세스가 종료됨

2, 문자열

import copy
# ######数字、字符串######
n1 = "my name is hellworld"
print(id(n1))
n2 = n1
print(id(n2))

###浅拷贝###
n2 = copy.copy(n1)
print(id(n2))

###深拷贝###
n3 = copy.deepcopy(n1)
print(id(n3))
C:Users811314AppDataLocalProgramsPythonPython35 -32python.exe C:/homework/day3/1.py

5973920
5973920
5973920<br><br>프로세스가 종료 코드 0

import copy
# ######数字、字符串######
n1 = ["helloworld","hapen"]
print(id(n1))
n2 = n1
print(id(n2))

###浅拷贝###
n2 = copy.copy(n1)
print(id(n2))

###深拷贝###
n3 = copy.deepcopy(n1)
print(id(n3))

C:Users811314 AppDataLocalProgramsPythonPython35-32python.exe C:/homework/day3/로 완료되었습니다. 1.py

12817912

12817912
10370784
12816672<br><br>프로세스가 종료 코드 0으로 끝났습니다

숫자와 문자열의 경우 할당, 얕은 복사, 깊은 복사는 항상 동일한 메모리 주소를 가리키므로 의미가 없습니다.

Shallow copy

, 데이터의 첫 번째 레이어만 메모리에 추가 생성

Deep copy

, 모든 데이터가 메모리에 다시 생성됨(마지막 레이어 제외, 즉: Python은 내부적으로 문자열과 숫자를 처리함)

<br><br>

위 내용은 파이썬 학습 일기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.