基于python中__add__函数的用法

yipeiwu_com5年前Python基础

运算符重载 _add

##定义:让自定义的类生成的对象(实例)能够使用运算符进行操作

class Vector01:
‘'‘定义一个一维向量'''
def init(self,x):
self.x = x
def str(self):
‘'‘定义新生成的返回值是什么,如果没有这个之间返回的是类的特点'''
return (‘一维向量的分量是:%d' % (self.x))
def add(self, other): #表示print内的+
# print(‘参数是:',other)
return Vector01(self.x + other)
v01 = Vector01(10)
print(v01+2) #v01.add(2)

##但是这只是适合(v01+2),若果要实现数值与自定义的类生成的对象的加法(2+v01),则需要增加定义函数__radd__来重新定义

以上这篇基于python中__add__函数的用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

PyQt5 实现字体大小自适应分辨率的方法

最近遇到一个现象,将做好的软件放在更高分辨率的电脑上运行,会导致字体显示不完全,出现被控件遮挡的情况。具体原因可以上网查询,在这里将记录下解决方法。 这里记录两种方法,如果使用的Qt版本...

python教程之用py2exe将PY文件转成EXE文件

一、简介 py2exe已经被用于创建wxPython,Tkinter,Pmw,PyGTK,pygame,win32com client和server,和其它的独立程序。py2exe是发布...

PyTorch 随机数生成占用 CPU 过高的解决方法

PyTorch 随机数生成占用 CPU 过高的问题 今天在使用 pytorch 的过程中,发现 CPU 占用率过高。经过检查,发现是因为先在 CPU 中生成了随机数,然后再调用.to(d...

python机器学习之神经网络(二)

python机器学习之神经网络(二)

由于Rosenblatt感知器的局限性,对于非线性分类的效果不理想。为了对线性分类无法区分的数据进行分类,需要构建多层感知器结构对数据进行分类,多层感知器结构如下: 该网络由输入层,...

Python二元赋值实用技巧解析

这篇文章主要介绍了Python二元赋值实用技巧解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 python支持类似于a += 3这...