파이썬에서는 메모리가 스스로를 "정렬"한다는 것을 알고 있습니다. 그러나 그것을 원하는 방식으로 결정할 방법이 있습니까?파이썬에서 클래스 복사하기
원시 변수에서는 변수를 복제하지만 목록 등에서는 참조로 만듭니다.
저는 Pygame Surface, 몇 가지 일반 변수 및 그런 것들을 가진 클래스를 가지고 있습니다. 이제는 a b를 수행하면 a 포인터를 b로 만들 것입니다. 어떻게 그것을 복제 할 수 있습니까?
이파이썬에서는 메모리가 스스로를 "정렬"한다는 것을 알고 있습니다. 그러나 그것을 원하는 방식으로 결정할 방법이 있습니까?파이썬에서 클래스 복사하기
원시 변수에서는 변수를 복제하지만 목록 등에서는 참조로 만듭니다.
저는 Pygame Surface, 몇 가지 일반 변수 및 그런 것들을 가진 클래스를 가지고 있습니다. 이제는 a b를 수행하면 a 포인터를 b로 만들 것입니다. 어떻게 그것을 복제 할 수 있습니까?
이당신은 copy
모듈을 사용할 수 있습니다
은 (내가 그것을 수행하는 기능을 할 수 있습니다 알고 있지만 어쩌면 더 쉬운 방법이) 내가 복사하는 학급 전체의 표면뿐만 아니라이
주 :
import copy
Class MyClass():
def __init__(self):
self.val = 5
a = MyClass()
b = copy.deepcopy(a)
복사 할 전체 클래스가 있음을 유의하십시오. 표면은 –
@ Ofek.T.뿐입니다. 여전히 작동합니다. 편집을 참조하십시오. – scohe001
표면의 여러 복사본을 수정하지 않는 한 잘못된 방법이라고 생각됩니다. – ninMonkey