값 유형:
포함: 문자열, 튜플, 값 자체는 수정이 허용되지 않습니다
참조 유형:
포함: 목록, 사전, 자체는 수정이 허용됩니다
a = 2
b = a
a = 3
값 유형의 값을 수정하고 새 메모리 주소를 가리키도록 하면 변수 b
의 값은 변경되지 않습니다.
lista = [1,2]
listb = lista
lista[ 0] = 3
참조형 값을 수정합니다. listb의 주소가 lista와 일치하므로 이것도 수정됩니다.
일반적으로 값을 복사하는 것만으로도 샤딩 작업을 사용할 수 있습니다.
listb = lista[:]
값을 전달하면
참조로 전달됩니다. 전달되는 것은 메모리 주소입니다. 수정 후에는 메모리 주소에 해당하는 값이 변경됩니다.
배열을 예로 사용하는 것이 가장 명확합니다. 예를 들어 배열 a[]={1,2};
을 정의하면 a[0]=1, a[1]=2입니다.
배열 a의 요소 값을 매개변수로 전달하면 실제로는 값 전송일 뿐 배열 자체에는 영향을 미치지 않습니다.
배열 a의 포인터를 매개변수로 전달하면 처리 함수가 직접 수정할 수 있습니다. 배열 a. 값
위 내용은 Python의 값 유형과 참조 유형 및 값 전달과 참조 전달의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!