Via*_*iuk 1 python linked-list
可以说我有这样的类定义Node
class Node:
def __init__(self, data, next):
self.data = data
self.next = next
Run Code Online (Sandbox Code Playgroud)
我还有head指向链表开头的变量。
head = None设置完全删除链表就可以了吗?我想 gc 应该做它的工作吗?
我将它与c/c++您仍然应该迭代整个列表并释放每个元素的地方进行比较。
通常,您甚至不需要执行任何操作。当变量的生命周期head结束时,如果您没有对该列表的任何其他引用,则该列表将变得不可访问并符合自动收集的条件。在 CPython 上,它通常会立即被收集,但您不应该依赖它。
如果您希望在变量的生命周期结束之前使列表符合收集条件head,则设置head = None将起作用,就像 一样del head。(请注意,这del意味着“取消设置此变量”,而不是“删除此对象”。)
| 归档时间: |
|
| 查看次数: |
3838 次 |
| 最近记录: |