40讲操作题,__del__()和__new__()的用法求助!
本帖最后由 leon_xinxin 于 2020-4-10 16:59 编辑1,__del__()用法
如图,大神们能帮忙解释一下第10行的意义吗?
我的理解里既然都已经在第9行close了,为什么还要del一次,这两个有什么区别吗?
2.__new__()用法
https://ae01.alicdn.com/kf/Uc15c3fc0774745088db6d1be09361e35Z.jpg
这整个答案里02-07行:
cls,arg,arg与str的关系,total的作用,arg的类型,ord,这些都是什么?。。。
求大神指导 我也想问来着
{:5_94:}
1. 个人觉得 del 不 del 都没关系了,del self.new_file 可能是为了减少内存占用
2. cls 就是 Nint 本身,arg 就是用户传进来的参数,total 是一个数量,如果 arg 是字符串那么将 arg 每一个字符的 Unicode 码加在一起(ord() 函数用于获取一个字符的 Unicode 码),最后把参数丢给 int 处理 没什么用,__del__ 只有在对象被删除时才会执行,不管 del 不 del 这个 fie 引用计数到最后都是减一,没啥区别 zltzlt 发表于 2020-4-11 01:13
1. 个人觉得 del 不 del 都没关系了,del self.new_file 可能是为了减少内存占用
2. cls 就是 Nint 本身, ...
1.可不可以这样理解:第九行关闭,其实还存在在内存里?所以需要第十行的del来清空内存?
2.也是我的理解:在__new__里面的cls,就相当于init里面的self?
leon_xinxin 发表于 2020-4-11 15:38
1.可不可以这样理解:第九行关闭,其实还存在在内存里?所以需要第十行的del来清空内存?
2.也是我的理 ...
1. 可以。
2. 不可以,cls 是 Nint,self 是 Nint 的实例 zltzlt 发表于 2020-4-11 10:15
1. 可以。
2. 不可以,cls 是 Nint,self 是 Nint 的实例
理解了!谢谢
页:
[1]