python对象的创建和实例的生成次数

Posted arrowxiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python对象的创建和实例的生成次数相关的知识,希望对你有一定的参考价值。

pyhton用__new__来创建对象(__new__相当于Java中的构建函数),

对象创建好之后会立即调用__init__方法来初始化对象,__init__方法有个参数self就是刚才__new__创建好的那个对象。通过我们有__init__方法中给对象的属性进行赋值,或者动态线对象添加属性并赋值

class test(object):
    count = 0
    def __new__(cls, *args, **kwargs):
        test.count += 1
        if test.count >2:
           raise Exception("大于2次实例化")
        return super(test, cls).__new__(cls)
    def __init__(self,a):
        self.a = a


test0 = test(c)
test1 = test(b)
# test3 = test(‘a‘)

print(test1.count)
del test1
del test0
print(test1.count)

当使用del objectname时则销毁这个对象的实例,当这个对象的引用计数为0的时候,就会被回收



以上是关于python对象的创建和实例的生成次数的主要内容,如果未能解决你的问题,请参考以下文章

创建片段而不从 java 代码实例化它

如何测量代码片段的调用次数和经过时间

python之pygal:掷两个不同的骰子并统计大小出现次数

通过游戏学python 3.6 第一季 第九章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账

通过游戏学python 3.6 第一季 第三章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释 可复制直接使用 娱乐 可封装 函数

通过游戏学python 3.6 第一季 第七章 实例项目 猜数字游戏--核心代码--猜测次数--随机函数和屏蔽错误代码--优化代码及注释--简单账号密码登陆--账号的注册查询和密码的找回修改--锁定账