Tag: del

在Python,del或delattr哪个更好?

这可能是愚蠢的,但它一直唠叨我的脑后。 Python给了我们两种内置的方法来删除对象的属性, del命令字和delattr内置函数。 我更喜欢delattr,因为我认为它更加明确: del foo.bar delattr(foo, "bar") 但是我想知道他们之间是否存在差异。

我不明白这个python __del__行为

有人可以解释为什么下面的代码行为的方式: import types class Dummy(): def __init__(self, name): self.name = name def __del__(self): print "delete",self.name d1 = Dummy("d1") del d1 d1 = None print "after d1" d2 = Dummy("d2") def func(self): print "func called" d2.func = types.MethodType(func, d2) d2.func() del d2 d2 = None print "after d2" d3 = Dummy("d3") def func(self): print "func called" […]

什么时候del在python中有用?

我真的不知道为什么python需要del关键字(大多数语言似乎没有类似的关键字)。 例如,不是删除一个variables,而是可以将None赋值给它。 从字典中删除时,可以添加一个del方法。 有没有任何理由保持python的del ,或者它是Python的预垃圾回收日的遗迹?