我有一个做一些事情的类:class IdoStuff:。在循环中,创建了IdoStuff类的对象,执行了一些操作,然后将其删除: for i in range(0,50): obj.doMoreStuff() # does another thing
del obj 在第一次迭代中,一切都按需要工作,但在第二次
我有大量的代码,它使用一些自定义类和大量字典。许多类的字典都是作为属性添加的。我发现它占用了太多的内存,特别是当我循环的时候--即使我手动删除了一些类和数据。我担心的是字典被删除了,但是它们所包含的对象仍然存在。为了更好地管理内存,我需要重构代码,但作为一种快速解决方案,我希望我可以递归地、不厌其烦地删除字典。如何实现这一目标?del bdel d
另外,在
我使用通过USB与仪器进行通信。我能很好地控制它。由于它是一个高电压源,在打开高压电源时忘记它是危险的,所以我想实现__del__方法,以便在代码执行完成时关闭输出。instrument = Instrument()问题是它不起作用,在终点站我得到了 File "comunication test.py", line 9, in set_voltage
F
正如我所理解的,我们在列表理解过程中创建了一些匿名变量,它们是垃圾收集的,使用filo原理,在列表理解未覆盖结束。但是,它们仍然在aa列表中被引用,不是吗?为什么在这种情况下,第二个'del a‘不调用del魔术方法?class A: self.name = name printself.name,
aa