python
主页 > 脚本 > python >

详解python获取引用对象的个数方式

2019-12-21 | 秩名 | 点击:

可以使用python中的sys模块的getrefcount()方法来获取对象引用的个数。

具体可以看以下的实例:
 

import sys # 首先导入sys模块
 
class Dog: # 定义 Dog 类
  pass
 
dog = Dog() # 创建一个dog对象
print(sys.getrefcount(dog)) # 打印对象的引用个数

输出结果:
 
 
>>>PS C:\Users\pierre\Desktop> python .\test.py
>>>2

这里可以看到统计的结果要比实际的引用个数多一个,这是因为getrefcount()方法要接收一个对象的引用作为参数,因此引用个数又增加了一个。

再添加一个指向dog的引用:
 
 
import sys
 
class Dog:
  pass
 
dog = Dog()
dog2 = dog #添加一个指向dog的引用
print(sys.getrefcount(dog))

输出结果:

 
>>>PS C:\Users\pierre\Desktop> python .\test.py
>>>3

可以看到引用数多了一个。

原文链接:https://blog.csdn.net/kobe_academy/article/details/88669245
相关文章
最新更新