关于为什么在类方法前添加@property会导致类的变量增加

在创建日期类时,作者发现即使没有直接定义self.day,调试时仍能访问到该变量。这是由于@property装饰器的作用,它将函数转化为属性,允许像访问变量一样调用无参数的函数。通过这个装饰器,可以不加括号直接访问函数结果,同时也支持带括号的调用方式。
摘要由CSDN通过智能技术生成

在编写一个日期类定义的时候遇到了以下问题:

我并没有在类中以self.day的形式定义day变量,然而在调试时却发现类中的确有这么一个变量被保存
在经过测试后我发现这是因为我在类中使用了@property装饰器

使用@property声明一个函数后,函数名将会被当作一个变量,可以使用“类名.函数名”的写法来获取函数运行结果而不需要加括号“()”
当然加括号也是被允许的

小小的记录一下学习过程中的疑惑及答案

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值