Python获取对象的应用个数

news/2024/7/7 13:25:25

在Python中获取对象的应用个数是使用sys模块。如下:

In [1]: class Myclass:
   ...:     pass
   ...:

In [2]: c = MyClass()
------------------------------------------------
NameError                                 Traceb
<ipython-input-2-7a6d4d069ec7> in <module>()
----> 1 c = MyClass()

NameError: name 'MyClass' is not defined

In [3]: c = Myclass()

In [4]: import sys

In [5]: sys.getrefcount(c)
Out[5]: 2

In [6]:

当前对象c只有一个变量应用就是他自己,那么输出是2的原因则是在调用sys.getrefcount方法时c当然实参传给了getrefcount方法的形参,此时就多了一个。那么实际的个数就是sys.getrefcount(c)-1


http://www.niftyadmin.cn/n/2015599.html

相关文章

java之 JVM 内存管理详解

一、JVM结构 根据《java虚拟机规范》规定&#xff0c;JVM的基本结构一般如下图所示&#xff1a; 从左图可知&#xff0c;JVM主要包括四个部分&#xff1a; 1.类加载器&#xff08;ClassLoader&#xff09;:在JVM启动时或者在类运行时将需要的class加载到JVM中。&#xff08;右图…

ubuntu15.04 无线上网问题

今天将笔记本装成了ubuntu15.04&#xff0c;但是一开始无法上无线wifi&#xff0c;可把我郁闷坏了&#xff0c;就开始百度呗&#xff0c;然后就找到了一些前辈们的足迹sudo iwlist wlan0 scan #找到要的ESSID比如chinanet #假设密码1234567890 sudo iwconfig wlan0 essid china…

Python模块导入与__name__变量的使用

我有以下三个python文件&#xff1a;在python中每一个py文件都是一个模块&#xff0c;不管里面写了什么。 现在main.py调用test1模块&#xff0c;那么导入的方式可以是&#xff1a;import test1导入test1包&#xff0c;在使用其中的类或者方法时&#xff0c;需要指定&#xff0…

uboot中MAC网络(待续)

start ->start_armboot ->main_loop 实际应用中问题&#xff1a;为什么从nandflash读出的MAC&#xff08;写到物理phy上&#xff09;与上层网口地址不同&#xff08;上层网口采用env的mac&#xff09;&#xff1f; 从nandflash读出mac并写入phy后&#xff0c;才初始化网络…

微型项目实践(12):查询与显示

上一篇中&#xff0c;我们分析了页面中的控件和数据绑定中的扩展方法&#xff0c;今天我们看数据的查询和显示。其中&#xff0c;数据的查询属于业务逻辑层&#xff08;Business&#xff09;&#xff0c;而显示属于UI层。 假设我们要根据以下两个条件进行查询&#xff1a; 日志…

Python 核心编程(第二版)——文件和输入输出

1.文件对象 文件对象不仅可以用来访问普通的磁盘文件, 而且也可以访问任何其它类型抽象层面上的"文件". 一旦设置了合适的"钩子", 你就可以访问具有文件类型接口的其它对象, 就好像访问的是普通文件一样。文件只是连续的字节序列. 数据的传输经常会用到字节…

使用 Nim 语言和使用 C 语言, 调用系统 POSIX 接口传递文件描述符的对比

进程组之间传递文件描述符, 是多进程服务器共享套接字常用的方式. 基于此方式, 可以提供 round-robin , 使每个服务器获得平衡的负载. Nim 和 C 语言调用相同的 POSIX 接口的编程方式如下, (事实上, Nim 是调用的 C POSIX 接口) Nim import posixproc CMSG_LEN(length: cuint)…

Python模块导入时全局变量__all__的作用

Python中一个py文件就是一个模块&#xff0c;“__all__”变量是一个特殊的变量&#xff0c;可以在py文件中&#xff0c;也可以在包的__init__.py中出现。 1、在普通模块中使用时&#xff0c;表示一个模块中允许哪些属性可以被导入到别的模块中&#xff0c;如&#xff1a;全局变…