这段代码是用Python中的面向对象编程编写的。如何计算这个程序中的引用变量。我试着打印这些对象的ID,但对我没有帮助。
class Computer:
def __init__(self):
self.no_of_legs=4
self.glass_top=None
self.wooden_top=None
Obj1=Computer()
Obj2=Computer()
Obj3=Obj2
Obj2=Obj1
您可以使用sys.getrefcount:
from sys import getrefcount
class Computer:
def __init__(self):
self.no_of_legs=4
self.glass_top=None
self.wooden_top=None
Obj1=Computer()
Obj2=Computer()
print(getrefcount(Obj1)) # 2
print(getrefcount(Obj2)) # 2
Obj3=Obj2
Obj2=Obj1
print(getrefcount(Obj1)) # 3
print(getrefcount(Obj2)) # 3
print(getrefcount(Obj3)) # 2