【发布时间】:2022-11-02 02:18:27
【问题描述】:
我需要删除/杀死一个类的实例,但它可能在其他一些类的变量中有引用。谁知道我怎样才能让它变得容易?
is_instance_exist = True
def check_vars():
try:
print('var1:' + str(var1))
except:
print('No var1')
try:
print('var2:' + str(var2))
except:
print('No var2')
def instance_deleted():
global is_instance_exist
is_instance_exist = False
def check_instance():
global is_instance_exist
print("Is instance exist: " + str(is_instance_exist))
class TestClass:
def __init__(self, inn):
self.tt = inn
def __str__(self):
return self.tt
def change(self, inn):
self.tt = inn
def __del__(self):
instance_deleted()
# ---------------------------------------
print("---1--- Create instance of class")
var1 = TestClass('5')
var2 = var1
check_vars()
check_instance()
# ---------------------------------------
print("---2--- Instance connectivity check")
var1.change('6')
check_vars()
check_instance()
# ---------------------------------------------------
print("---2--- Deleting var1")
del var1
check_vars()
check_instance()
# ---------------------------------------------------
print("---3--- Deleting var2")
del var2
check_vars()
check_instance()
# ---------------------------------------------------
print("---The end---")
删除每个变量是非常困难的。 有谁知道我怎么能轻松做到这一点?
.....................................
【问题讨论】:
标签: python-3.x class