python3代码中实现加法重载的实例
作者:小妮浅浅 发布时间:2023-07-13 12:01:31
标签:python3,加法重载
我们想要知道数目的总和,只要通过+就能实现,这是我们在做题上经常用到的符号。但是在python中不能直接使用,我们需要借助一些代码或者函数帮助我们实现对象的相加。那么实现加法需要用到什么呢?小编在这里跟大家讲讲操作符重载,可能有些人听到这个很长的词比较陌生,我们继续往下深入学习。
Python支持操作符重载。“操作符重载”其实是个简单的概念,你是否曾经想过为什么Python可以让你使用“+”操作符来同时实现加法和连接字符串?这就是操作符重载在发挥作用。
你可以定义使用Python标准操作符符号的对象,这可以让你在特定的环境中使用特定的对象。
Python 关于运算符重载的规则:
不能重载内置类型的运算符
不能新建,只能重载
某些运算符不能重载--is、and、or 和 not
Python运算实际上是通过调用对象的特殊方法实现的,比如a+b:
a=20
b=30
c=a+b
d=a.__add__(b)
print("c:",c)
print("d:",c)
运算结果:
c: 50
d: 50
Vector 对于乘法的重载也是类似的:
def __mul__(self, scalar):
if isinstance(scalar, numbers.Real):
return Vector(n * scalar for n in self)
else:
return NotImplemented
def __rmul__(self, scalar):
return self * scalar
注意这里我们值定义了向量乘以一个数的乘法。尝试做点乘,矩阵乘法被分配给了@符号,我们也可以做这个定义,然后来运算
def __matmul__(self, other):
try:
return sum(a * b for a, b in zip(self, other))
except TypeError:
return NotImplemented
def __rmatmul__(self, other):
return self @ other # this only works in Python 3.5
借助操作运算符重载我们不仅可以实现加法的运算,乘法也同样可以完成。
来源:https://www.py.cn/jishu/jichu/21547.html


猜你喜欢
- 首先就是进程、线程、协程讲解老三样。进程: 本质上是一个独立执行的程序,进程是操作系统进行资源分配和调度的基本概念,操作系统进行资
- 用Pdb调试有多种方式使用 Pdb调试 Python的程序的方式主要是下面的三种!下面逐一介绍命令行加-m参数命令行启动目标程序,加上-m参
- 一、集合在 python 中用 {} 扩起一堆数字,但是这堆数字没有体现映射关系,那么这堆数字就是一个集合。集合的特色:集合在 python
- pytorch_pretrained_bert将tensorflow模型转化为pytorch模型BERT仓库里的模型是TensorFlow版
- 大家通过手机自带浏览器打开百度、淘宝,在首页加载完毕后,会自动隐藏页面上方的地址栏,加之这些网站针对手机浏览器做了优化,乍看之下,还真难区分
- 本文实例为大家分享了python实现knn算法的具体代码,供大家参考,具体内容如下knn算法描述对需要分类的点依次执行以下操作:1.计算已知
- 比如,在使用DWR的时候,如果你想传递下拉框的参数到后台的话,此时就需要先获取到下拉框的值了。 其实想要获取到下拉框的值是很简单的。 最关键
- 命令行进入python打开cmd——>直接输入python即可,如下退出python方法一:先按Ctrl+z,再按Enter(回车键)
- 全文索引在 MySQL 中是一个 FULLTEXT 类型索引。FULLTEXT 索引用于 MyISAM 表,可以在 CREATE TABLE
- 高可用架构对于互联网服务基本是标配,无论是应用服务还是数据库服务都需要做到高可用。虽然互联网服务号称7*24小时不间断服务,但多多少少有一些
- 前言: MySQL 主从架构应该是最常用的一组架构了。从库会实时同步主库传输来的数据,一般从库可以作为备用节点或作查询使用。其实不只是主库需
- 前言由于Django是 * 站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存
- 实现代码/// <summary>/// 去除HTML标记/// </summary&
- enumerate函数用于遍历序列中的元素以及它们的下标。enumerate函数说明:函数原型:enumerate(sequence, [s
- 本文实例讲述了python实现的简单RPG游戏流程。分享给大家供大家参考。具体如下:#RPGrpg = Truewhp = 100mahp
- 代码很简单,主要是修改了下百度分享的部分代码,小伙伴们自己对比下。<div class="tool_title"&
- 本文实例讲述了go语言使用pipe读取子进程标准输出的方法。分享给大家供大家参考。具体如下:其核心代码如下:cmd := exec.Comm
- 写在前面python-docx 不支持 doc 文档,一定要注意该点,如果使用 doc 文档,需要提前将其用 Word 相关软件转换为 do
- 用过QQ的人应该都知道软键盘,他可以增强我们密码的安全性,以保证我们的密码资料不被非法监听。现在软键盘也用在了很多的网站上,像早期银行的在线
- 观察者模式结构图概念一个"演员"(被观察者),一群"观众"(观察者),一台"摄影机&quo