第五章 面向对象高级编程
yipyk
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【Python进阶】5-4 __slots__ / __call__
文章目录1、前言2、使用__slots__3、使用__call__1、前言正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性。先定义class:class Student(object): pass然后,尝试给实例绑定一个属性:>>> s = Student()>>&...原创 2020-02-28 15:19:52 · 315 阅读 · 0 评论 -
【Python进阶】5-3 python中 @property
文章目录使用@property小结任务使用@property在绑定属性时,如果我们直接把属性暴露出去,虽然写起来很简单,但是,没办法检查参数,导致可以把成绩随便改:s = Student()s.score = 9999这显然不合逻辑。为了限制score的范围,可以通过一个set_score()方法来设置成绩,再通过一个get_score()来获取成绩,这样,在set_score()...原创 2020-02-28 13:49:26 · 216 阅读 · 0 评论 -
【Python进阶】5-2 数学运算 / 类型转换
文章目录1、数学运算2、类型转换1、数学运算Python 提供的基本数据类型 int、float 可以做整数和浮点的四则运算以及乘方等运算。但是,四则运算不局限于int和float,还可以是有理数、矩阵等。要表示有理数,可以用一个Rational类来表示:class Rational(object): def __init__(self, p, q): sel...原创 2020-02-28 10:42:12 · 1448 阅读 · 3 评论 -
【Python进阶】5-1 __str__() / __repr__() / __cmp__() / __len__()
python中 __str__和__repr__如果要把一个类的实例变成 str,就需要实现特殊方法__str__():class Person(object): def __init__(self, name, gender): self.name = name self.gender = gender def __str__(self): ...原创 2020-02-28 09:34:57 · 222 阅读 · 0 评论
分享