首页 > 解决方案 > 在离开函数之前删除条目对象是否有用?

问题描述

Python 有一个嵌入式垃圾收集器,但最好在离开函数之前显式编写命令 gc.collect()。在此之前,欢迎使用 del 命令删除局部变量。我不清楚的是函数接收到的输入变量/对象是否也应该被删除?

标签: pythonmemory-managementmemory-leaksgarbage-collectiondel

解决方案


一般来说,不——不清理。通过在不需要时强制进行垃圾收集,您正在浪费执行时间……大量执行时间。编写运行时系统以根据需要执行 GC。

如果您比运行时系统更了解——如果您知道何时调用 GC 以显着提高程序的性能,那么请继续并根据需要调用它。问这个问题表明你没有这些知识。我们大多数人都没有,而且大多数人都知道,最好不要试图超越内置功能。

不要del你的本地对象。如果您在执行此操作时出错,并且不小心删除了外部对象,那么您的函数将损坏整个程序。


推荐阅读