改写魔法方法,下发代码把int类的加减进行了互换

class New_num(int):def __add__(self, other):return int.__sub__(self, other)def __sub__(self, other):return int.__add__(self, other)a = New_num(7)
b = New_num(5)
print(a + b)
print(a - b)
2
12

下面把右加方法变成了减法

class Nnum(int):def __radd__(self, other):return int.__sub__(self, other)a = Nnum(5)
b = Nnum(2)
print(a + b)
print(1 + b)
7
1

python入门——P43魔法方法:算数运算2相关推荐

  1. python入门——P41魔法方法:构造和析构

    魔法方法总是被双下划线包围 魔法方法是面向对象Python的一切 魔法方法的强大,体现在他们总能在合适的时候自动调用 __init__(self[, -]) 在实例被构造初始就需要属性,对一个对象进行 ...

  2. python入门——P42魔法方法:算数运算1

    下面是算数运算的一些魔法方法 我们接下来可以做个小改变 class New_num(int):def __add__(self, other):return int.__sub__(self, oth ...

  3. python入门——P48魔法方法:迭代器

    迭代 上一次的输出,作为下一次的输入,返回自身,代码如下 dic = {"00":"a", "01":"b", &quo ...

  4. python入门——P47魔法方法:定制序列

    容器类型的协议 希望容器不可变,则只需定义__len_()和__getitem_()方法 如果希望容器可变,除了上面两个,还需要__setitem_()和__delitem_()两个方法 编写一个不可 ...

  5. python入门——P45魔法方法:属性访问

    下面是通过property访问属性的用法 class C():def __init__(self, size=10):self.size = sizedef getsize(self):return ...

  6. python入门——P46魔法方法:描述符(Property的原理)

    描述符 描述符就是将某种特殊类型的类的实例,指派给另一个类的属性. 特殊类型: __get_(self, instance, owner) 用于访问属性,返回属性的值 __set_(self, ins ...

  7. python入门——P44魔法方法:简单定制

    写个计时器的类 import time as t class Mytimer():def __init__(self):self.unit = ["year", "mou ...

  8. python深度讲解_《深度剖析CPython解释器》21. Python类机制的深度解析(第五部分): 全方位介绍Python中的魔法方法,一网打尽...

    楔子 下面我们来看一下Python中的魔法方法,我们知道Python将操作符都抽象成了一个魔法方法(magic method),实例对象进行操作时,实际上会调用魔法方法.也正因为如此,numpy才得以 ...

  9. 刻意练习:Python基础 -- Task11. 魔法方法

    背景 我们准备利用17天时间,将 "Python基础的刻意练习" 分为如下任务: Task01:变量.运算符与数据类型(1day) Task02:条件与循环(1day) Task0 ...

最新文章

  1. JS-用js的for循环实现九九乘法表以及其他算数题等
  2. jQuery 文件上传插件:uploadify、swfupload
  3. com.mysql.jdbc.NotUpdatable: Result Set not updatable (references no primary keys).(解决方法)
  4. 只能在测试中注射吗?
  5. 美国安全厂商在云安全上的最新进展
  6. Python的permutations和combinations的区别
  7. C#静态方法与非静态方法的比较 <转载>
  8. aws cloud map_Amazon EC2 – AWS Elastic Compute Cloud
  9. 【路径规划】基于matlab无线充电车辆路径和速度预测【含Matlab源码 1473期】
  10. Qt抽奖圆盘(减速效果)
  11. 高通工具QXDM安装及使用方法
  12. java api 8 中文_java8 JDK1.8 API 中文 翻译版 java帮助文档
  13. Linux平台Libyuv使用指南
  14. cad插件苹果系统_Hot Door CADtools v12.1.1 for mac(支持AI 2020)
  15. 百度识图api连接与解析详细数据
  16. 森林火灾检测图像数据集(数据集中标注了真实火情中的烟和火,用于森林防火预警,COCO标签,453张)
  17. 瑞典皇家理工学院计算机学什么,瑞典皇家理工大学学科设置是怎样的?
  18. k8s创建service
  19. 什么是深度学习,深度学习和机器学习之间,主要有什么区别
  20. OSPF单区域配置【eNSP实现】

热门文章

  1. linux mac time machine,用 Ubuntu 10.10 构建 Time Machine 备份服务器
  2. opencascade架构_基于OpenCASCADE的CAD平台分析报告
  3. mongodb转mysql思路_脚本 将阿里云 mongodb数据转成mysql
  4. php end array_value,PHP常用处理数组函数
  5. python字典应用实例_Python中的字典应用实例
  6. c++多边形扫描线填充算法_python 小乌龟turtle画随机正多边形
  7. 35张史上最全IT架构师技术知识图谱
  8. 64匹马,8个赛道,通过比赛,决出前四名。
  9. python 六剑客(匿名函数和内建函数)
  10. Spring之@Configuration配置解析