我正在开发一个用Python编写的文本冒险游戏,只是为了好玩(看看我能否做到)。我正在研究实体的模块,正在研究一种方法,让它们被杀死。当一个实体被杀死时,我还希望删除它的实例以节省内存,而不仅仅是显示一个kill消息并使该实体无法动作。
如何让实体类的实例自行删除?
例如(部分伪代码):
class Entity(object):
#other methods here
def kill(self):
if self.health <= 0:
self.deleteinstance
or
deleteinstance(self)
提前感谢您的帮助。
编辑:我知道这是重复的,但所有其他人的答案都提到当没有任何内容引用时删除了对象。我的问题是如何不引用此类的实例,因为如果没有kill
方法,可能实例仍然会在内存中具有负面的健康状况。
答案 0 :(得分:2)
现在,你为什么要这样做?
Python中的对象一旦没有任何指向就会被垃圾收集,所以你不必担心。否则,您应该查看其他SO问题中的一些答案:Python object deleting itself。
你可以尝试:
gx