在Python中清除variables
有没有办法在python中清除variables的值?
例如,如果我正在实现一个二叉树:
Class Node: self.left = somenode1 self.right = somenode2
如果我想从树中删除一些节点,我需要将self.left
设置为空。
怎么了self.left = None
? 我误解了你的问题,还是你不熟悉None
关键字?
del
关键字可以。
>>> a=1 >>> a 1 >>> del a >>> a Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'a' is not defined
编辑:但在这种情况下,我投票self.left = None
var = None
“清除值”,将variables的值设置为“null”,如“None”的值,但指向variables的指针保持不变。
del var
完全删除了variables的定义。
如果你想稍后使用这个variables,例如为它设置一个新的值,即保留这个variables, None
会更好。
其实,这不会删除variables/属性。 它所要做的就是把它的值设置为None
,所以variables仍然占用内存空间。 如果要从内存中完全清除variables的所有存在,只需键入:
del self.left
你可以试试这个:
self.left = None
self.left = None
应该做的工作。