问题是我无法使用deepcopy()在newMegaNode中创建独立的megaNode副本。似乎即使在使用它之后,newMeganode和megaNode也被绑定在一起。我有没有做错什么?在输出中,所有内容都绑定到megaNoda,即使我专门使用deepcopy()将其内容复制到newMegaNode并添加到newList。在
def newAlgo():
global nodeQueue
initalNode = AnswersAlgo();
scratchList = []
scratchList.append(initalNode)
newList = []
for node in nodeQueue:
for megaNode in scratchList:
if validation(node,megaNode):
newMegaNode = copy.deepcopy(megaNode) #Unable to create independent object
newList.append([node,newMegaNode])
for x,y in newList:
scratchList.append(y.addToList(x))
有时在Python2.x中,如果在类定义中没有从“object”继承,类行为会变得混乱。如果您是python version is 2.x,请确保类继承自“object”,如下所示:
另请看一下this post
相关问题 更多 >
编程相关推荐