2024-简单点-python中的__call__和__new__和__init__

__call__和__new__是Python中关键的特殊方法,__call__允许对象像函数一样被调用,而__new__在对象实例化早期创建对象。它们在对象的生命周期中扮演不同角色,分别负责对象的创建和初始化。

1

__call____new__ 是 Python 中的两个特殊方法,它们各自在 Python 的对象生命周期中扮演着重要的角色。

  1. __call__ 方法:

__call__ 方法允许一个类的实例像函数一样被调用。当你尝试调用一个对象(即,在对象后面加上括号并传入参数)时,Python 会自动查找该对象的 __call__ 方法并调用它。如果对象没有定义 __call__ 方法,那么尝试调用对象将会引发一个 TypeError

示例:

class CallableClass:
    def __call__(self, *args, **kwargs):
        print("Instance is being called with", args, kwargs)

obj = CallableClass()
obj
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

万物琴弦光锥之外

给个0.1,恭喜老板发财

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值