2020-12-21

类的定义
Python使用class关键字来定义类,其语法格式如下:
在这里插入图片描述其中,类名的首字母一般需要大写,具体示例如下:
在这里插入图片描述
其中,实例方法与前面学习的函数格式类似,区别在于类的所有实例方法都必须至少有一个名为self的参数,并且必须是方法的第一个形参(如果有多个形参),self参数代表将来要创建的对象本身。另外,self.name称为实例属性,在类的实例方法中访问实例属性时需要以self为前缀。
在类中定义实例方法时,第一个参数指定为“self”只是一个习惯。实际上,该参数的名字是可以变化的,具体如下所示:
在这里插入图片描述
对象的创建
类对象是在执行class语句时创建的,如例所示。
在这里插入图片描述
运算符重载
在Python中可通过运算符重载来实现对象之间的运算,如字符串可以进行如下运算:
在这里插入图片描述
字符串可以通过“+”运算符实现字符串连接操作,其本质是通过__add__方法重载了运算符“+”,因此上述代码还可以写成如下代码:

Python把运算符与类的实例方法关联起来,每个运算符都对应一个方法。运算符重载就是让类的实例对象可以参与内置类型的运算。
定义一个复数类并对其进行算术运算符重载,如例所示。
在这里插入图片描述
定义一个复数类并对其进行比较运算符重载,如例所示
在这里插入图片描述
在例中,定义一个MyComplex类,通过__eq__ ()方法重载==运算符。
当对象作为print()、str()函数的参数时,该对象会调用重载的__str__()方法,如例所示。
当对象作为print()、str()函数的参数时,该对象会调用重载的__str__()方法,如例所示。
当对实例对象执行索引、分片或for迭代时,该对象会调用重载的__getitem__()方法,如例所示。
在这里插入图片描述
当对实例对象执行检查成员时,该对象会调用重载的__contains__()方法,如例所示。
在这里插入图片描述
在例中,定义一个Data类,通过__contains__()方法重载检测成员运算符。
通过扑克牌类与玩家类设计扑克牌发牌程序,要求程序随机将52张牌(不含大小王)发给4位玩家,最终在屏幕上显示每位玩家的牌,具体实现如例所示。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值