Python에서 함수에 대한 인수 전달은 참조에 의해 수행됩니다. 즉, 전달된 매개변수는 다음 항목에 대한 참조입니다. 실제 개체. 그러나 값으로 참조를 전달하는 것과 실제로 참조로 전달하는 것의 차이점을 이해하는 것이 중요합니다.
Python에서는 매개변수가 값으로 전달됩니다. 이는 복사본을 의미합니다. 객체의 매개변수는 함수 내의 매개변수에 할당됩니다. 이는 두 가지 의미를 갖습니다:
실제 참조에 의한 전달은 Python에서 직접 지원되지 않지만 이를 시뮬레이션하는 몇 가지 기술이 있습니다:
다음 코드는 전달을 보여줍니다. -변경 가능(목록) 및 불변 참조 (문자열):
# Mutable List def modify_list(the_list): the_list.append('four') outer_list = ['one', 'two', 'three'] print("Before: ", outer_list) modify_list(outer_list) print("After: ", outer_list) # Immutable String def modify_string(the_string): the_string = 'In a kingdom by the sea' outer_string = 'It was many and many a year ago' print("Before: ", outer_string) modify_string(outer_string) print("After: ", outer_string)
출력:
Before: ['one', 'two', 'three'] After: ['one', 'two', 'three', 'four'] Before: It was many and many a year ago After: It was many and many a year ago
출력에서 볼 수 있듯이 목록은 성공적으로 수정되었지만(참조별 전달) 문자열은 변경되지 않은 상태로 유지됩니다(전달 -값 기준).
위 내용은 Python은 참조별 전달 및 값별 전달을 어떻게 처리합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!