Python에서 객체 복사
객체의 독립적인 복사본을 만드는 것은 프로그래밍에서 일반적인 작업입니다. Python에서 객체를 복사하는 방법에는 얕은 복사와 깊은 복사의 두 가지 주요 방법이 있습니다.
얕은 복사
Python의 기본 복사 메커니즘은 얕은 복사입니다. 이는 원래 개체와 동일한 필드에 대한 참조를 사용하여 새 개체가 생성됨을 의미합니다. 새 객체의 필드에 대한 모든 변경 사항은 원본 객체에도 반영됩니다.
심층 복사
반면, 심층 복사는 새로운 객체를 생성합니다. 원본 개체와 별도의 필드 복사본이 있는 개체입니다. 즉, 새 개체의 필드에 대한 변경 사항은 원본 개체에 영향을 주지 않습니다.
Python에서 개체의 완전히 독립적인 복사본을 얻으려면 복사본을 사용할 수 있습니다. .deepcopy() 함수. 예는 다음과 같습니다.
<code class="python">import copy # Original object obj = { "name": "Alice", "age": 20 } # Create a shallow copy shallow_copy = obj # Create a deep copy deep_copy = copy.deepcopy(obj) # Modify the shallow copy shallow_copy["name"] = "Bob" # Print the original and deep copy print(obj) # Output: {'name': 'Bob', 'age': 20} print(deep_copy) # Output: {'name': 'Alice', 'age': 20}</code>
보시다시피 deep_copy는 개체의 원래 값을 유지하는 반면,shallow_copy는 원본 개체에 대한 변경 사항의 영향을 받습니다.
위 내용은 Python에서 얕은 복사와 깊은 복사는 어떻게 다릅니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!