【发布时间】:2019-04-28 16:36:51
【问题描述】:
作为一名程序员,我通常会尽量避免使用 del 语句,因为它通常是 Python 程序不需要的额外复杂功能。但是,在浏览标准库(threading、os 等...)和伪标准库(numpy、scipy 等...)时,我发现它使用了非零数量的时候,我想更好地理解什么时候是/不适合 del 声明。
具体来说,我很好奇Pythondel语句与Python程序效率的关系。在我看来,del 可以通过减少需要筛选的杂乱查找指令的数量来帮助程序运行得更快。但是,我也可以看到额外指令占用的时间多于节省的时间。
我的问题是:有没有人有任何有趣的代码 sn-ps 来演示 del 显着改变程序速度的情况?我对del 提高程序执行速度的情况最感兴趣,尽管del 确实会造成伤害的非平凡情况也很有趣。
【问题讨论】:
-
“在我看来,del 可以通过减少需要筛选的杂乱查找指令的数量来帮助程序运行得更快”——这不是 Python 中变量查找的工作方式,而且几乎可以肯定不是在您看到的使用
del的代码中经过作者的头脑。 -
查看您给出的示例之一 (
threading),该模块使用del来避免全局命名空间混乱、删除 dict 条目并避免回溯引用循环。
标签: python