我在计算参考变量时感到困惑.如何计算引用变量的数量



这段代码是用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

最新更新