第十周作业

1. 集合(set)元素去重的判断依据是什么

__hash__ 方法只是返回一个 hash 值作为 set key ,但是 去重 , 还需要 __eq__ 来判断 2 个对象是否相等hash值相等,只是 hash 冲突,不能说明两个对象是相等的。因此,一般来说实现 __hash__ 方法,要同时实现 __eq__ 方法, 去重 依赖 __eq__ 方法

2. 总结本周视频讲解魔术方法的作用及什么情况会执行到该方法

  • __new__   :实例化一个对象该方法需要返回一个值,如果该值不是cls的实例,则不会调用__init__该方法永远都是静态方法
  • __bool__  :内建函数bool(),或者对象放在逻辑表达式的位置,调用这个函数返回布尔值。 没有定义 __bool__ (),就找 __len__ ()返回长度,非0为真。如果 __len__ ()也没有定义,那么所有实例都返回真
  • 可视化

  •  运算符

 

  • 容器相关方法

  • __call__       :类中定义一个该方法,实例就可以像函数一样调用
  •  上下文管理

  •  反射

 

3. 结合本周所学内容,实现如下类:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值