在python上没有指针的概念(至少我知道)。
如果要将对象保存在列表中,则只需保留对该对象的引用即可。
在将原始值保存到列表的情况下,我要采取的方法是在一个或多个值周围创建一个包装对象,并保留该对象的引用以供以后使用它而不必访问列表。这样,包装器就可以用作可变对象,并且无论从何处访问都可以对其进行修改。
一个例子:
class FooWrapper(object): def __init__(self, value): self.value = value# save an object into a listl = []obj = FooWrapper(5)l.append(obj)# add another object, so the initial object is shiftedl.insert(0, FooWrapper(1))# change the value of the initial objectobj.value = 3print l[1].value # prints 3 since it's still the same reference
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)