要避免对象指向相同的底层对象,可以采用以下解决方法:
import copy
class MyClass:
def __init__(self, value):
self.value = value
obj1 = MyClass(10)
obj2 = copy.deepcopy(obj1)
class MyClass:
def __init__(self, value):
self.value = value
def create_object(value):
return MyClass(value)
obj1 = create_object(10)
obj2 = create_object(10)
class MyClass:
def __init__(self, value):
self.value = value
self._create_new_object()
def _create_new_object(self):
# 创建新的底层对象的逻辑
pass
obj1 = MyClass(10)
obj2 = MyClass(10)
这些方法可以确保每个对象都指向不同的底层对象,避免对象指向相同的底层对象。
上一篇:避免对相同的嵌套查询进行两次调用
下一篇:避免对稀疏矩阵进行元素乘法堆叠