美文网首页
【高级特性】44、类定义中的特殊方法

【高级特性】44、类定义中的特殊方法

作者: 看远方的星 | 来源:发表于2021-05-27 20:40 被阅读0次

    目录
    一、基本概念
    二、构造与解构
    三、算术运算
    四、其他特殊方法

    一、基本概念

    • 特殊方法(special method)
      也被称作魔术方法(magic method)
      在类定义中实现一些特殊方法,可以方便地使用python中一些内置操作
      所有特殊方法的名称以两个下划线(__)开始和结束

    二、构造与解构

    • 对象构造器
      _init_(self,[…)
      对象的构造器,实例化对象时调用
    • 析构器
      _del_(self,[.…)
      销毁对象时调用
      image.png

    三、算术运算

    • 算术操作符
      _add_(self,other):使用+操作符
      _sub_(self,other):使用一操作符
      _mul_(self,other):使用*操作符
      _div_(self,other):使用/操作符

    • 反运算
      当左操作数不支持相应的操作时被调用
      _radd_(self,other)_rsub_(self,other)
      _rmu1_(self,other)_rdiv_(self,other)

    • 大小比较
      _eq_(self,other):使用==操作符
      _ne_(self,other):使用!=操作符
      _lt_(self,other):使用<操作符
      _gt_(self,other):使用>操作符
      _1e_(self,other):使用<=操作符
      _ge_(self,other):使用>=操作符

    image.png
    image.png
    image.png

    四、其他特殊方法

    • 字符串操作
      不仅数字类型可以使用像+(_add_())和- (_sub_())的数学运算符,例如字符串类型可以使用+进行拼接,使用*进行复制
      _str_(self):自动转换为字符串
      _repr_(self):返回一个用来表示对象的字符串
      _len_(self):返回元素个数
    • 其它特殊方法参见课程网站
      http://gis4g.pku.edu.cn/python-magic-method/

    相关文章

      网友评论

          本文标题:【高级特性】44、类定义中的特殊方法

          本文链接:https://www.haomeiwen.com/subject/xzvdsltx.html