Python 참조 형식 과 값 형식의 차이 점 및 사용 분석

Python 데이터 형식 은 값 형식 과 참조 형식 으로 나 뉘 는데 다음 과 같은 차 이 를 살 펴 보 겠 습 니 다.
값 종류:
대상 자체 가 수정 을 허용 하지 않 습 니 다.수치의 수정 은 사실상 변 수 를 새로운 대상 으로 가리 키 게 합 니 다.
포함:문자열,모듈,수치,자체 수정 이 허용 되 지 않 습 니 다.
참조 형식:
대상 자 체 는 수정 할 수 있 습 니 다.
포함:목록,사전,자체 수정 가능
예:

a = 11 
print id(a) 
a = 16 
print id(a)
결과:

43525053L
57628312L
값 형식의 값 을 수정 합 니 다.새로운 메모리 주 소 를 가리 키 기만 할 뿐 변수 b 의 값 을 바 꾸 지 않 습 니 다.

l = [1,2,3] 
print id(l) 
l[0] = 0 
print id(l)
결과:

19775281L
19775281L
인용 형식의 값 을 수정 합 니 다.listb 의 주소 와 lista 가 일치 하기 때문에 수 정 됩 니 다.
일반적으로 값 만 복사 하기 위해 서 는 분할 작업 을 사용 할 수 있다.

listb = lista[:]
다음은 python 의 값 형식 과 참조 형식 을 따로 보 겠 습 니 다.
값 종류:
포함:문자열,모듈,수치,자체 수정 이 허용 되 지 않 습 니 다.
참조 형식:
포함:목록,사전,자체 수정 가능

a = 2
b = a
a = 3
값 형식의 값 을 수정 합 니 다.새로운 메모리 주 소 를 가리 키 기만 할 뿐 변수 b 의 값 을 바 꾸 지 않 습 니 다.

lista = [1,2]
listb = lista
lista[0] = 3
인용 형식의 값 을 수정 합 니 다.listb 의 주소 와 lista 가 일치 하기 때문에 수 정 됩 니 다.
일반적으로 값 만 복사 하기 위해 서 는 분할 작업 을 사용 할 수 있다.

listb = lista[:]
총결산
위 에서 말 한 것 은 소 편 이 여러분 에 게 소개 한 Python 인용 유형 과 값 유형의 차이 와 사용 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기