파이썬 객체를 어디서나 다른 객체로 대체하려면 어떻게해야합니까?파이썬 객체 하나 하나를 다른 곳으로 대체하십시오
나는 두 개의 클래스 인 SimpleObject
과 FancyObject
을 가지고 있습니다. 나는 SimpleObject
을 만들었으며 그것에 대해 여러 가지 언급을했습니다. 이제 FancyObject
을 만들고 모든 참조가 새 객체를 가리 키도록하고 싶습니다.
a = SimpleObject()
some_list.append(a)
b = FancyObject()
a = b
는 그냥 어떤 지점으로 변경, 내가 원하는 것이 아니다. 나는 다음과 같이 작동하지만 읽지 않습니다. 나는이 해키이지만, 어떤 방법이 알고
*a = *b
:
a.__dict__ = b.__dict__
는 내가 원하는 것은 (의사-C)에 해당합니다 : 나는 오류가 "쓸 수 없습니다 __dict__ 속성"GET 이것을 성취하기 위해서?
그래서, 당신은'A'가 저장되는 장소에 저장되는 데이터를 변경하려면? 나는 점심 식사 후 대답을 게시 할 것이다. – pradyunsg
@ Schoolboy 예. 기본적으로 저는 간단한 객체를 넣었습니다. 필요가 생길 때 좀 더 복잡한 객체로 그것을 (게으르게) 승격시키고 싶습니다. a와 b는 같은 인터페이스를 가지고 있으므로이를 사용하는 코드가이를 처리 할 수 있어야합니다. – jdm