gpt4 book ai didi

python - 删除类后使用类方法和变量

转载 作者:太空宇宙 更新时间:2023-11-04 07:40:48 25 4
gpt4 key购买 nike

所以我今天在 Python IDLE Shell 中闲逛,我注意到了一些东西。我有这样的类(class):

class Name:
def __init__(self, name):
self.name = name
def __str__(self):
return self.name

我创建了一个类的实例并打印出名称:

name1 = Name("Cameron")
print(name1)

然后我删除了类:

del Name

但后来意识到我仍然可以像什么都没发生一样使用“name1”:

# still returns 'Cameron'
print(name1)

谁能告诉我为什么会这样?

最佳答案

del 并不意味着“销毁这个东西”。它的意思是“取消分配这个变量”。对该变量引用的对象的其他引用不受影响,只要该对象可通过某些引用链访问,它就不会被销毁。

当你执行

del Name

Name 变量消失了,但是变量用来引用的 Name 类仍然存在。 name1 具有对其类型的引用,因此它将继续正常工作。

关于python - 删除类后使用类方法和变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21768043/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com