怎么在python中利用添加实现一个重载加法

  介绍

怎么在python中利用添加实现一个重载加法?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

python主要用来做什么

python主要应用于:1,网络开发;2、数据科学研究;3,网络爬虫;4、嵌入式应用开发,5日游戏开发;6桌面应用开发。

<强> 1,先定义一个类:

 class 点:
  ,,,def  __init__(自我,,x,, y):
  ,,,,,,,self.x =, x
  ,,,,,,,self.y =y
  ,
  在祝辞祝辞,a =,点(2,4)
  在祝辞祝辞,b =,点(3,5)
  在祝辞祝辞a  +, b
  Traceback  (most  recent  call 最后一个):
  File 才能“/usr/地方/python3/lib/python3.6/网站/IPython/核心/interactiveshell.py",, line  2862年,run_code拷贝
  ,,,exec (code_obj, self.user_global_ns,, self.user_ns)
  File 才能“& lt; ipython-input-7-f96fb8f649b6>“, line  1,拷贝& lt; module>
  ,,,a  + b
  TypeError: unsupported  operand 类型(s), for  +:, & # 39;点# 39;,以及& # 39;点# 39;

很显然a和b并不能相加,但是我们可以定义一个方法让它们实现相加。

 class 点:
  ,,,def  __init__(自我,,x,, y):
  ,,,,,,,self.x =, x
  ,,,,,,,self.y =y
  ,,,,
  ,,,#,定义一个,add 方法
  ,,,def 添加(自我,其他):
  ,,,,,,,return 点(时间+ self.x  other.x,, self.y  +, other.y)
  ,
  在祝辞祝辞,a =,点(2,4)
  在祝辞祝辞,b =,点(3,5)
  在祝辞祝辞,c =, a.add (b)
  在祝辞祝辞c.x
  [6]:,5 

<强> 2,通过一个添加方法,我们实现了它们的相加功能。但是,我们还是习惯使用加号,事实上,我们只要改下函数名就可以使用+进行运算了。

<>之前,,,def  __add__(自我,其他):   ,,,,,,,return 点(时间+ self.x  other.x,, self.y  +, other.y)

很显然+就是调用类的__add__方法,因为我们只要加入这个方法就能够实现加法操作。

看完上述内容,你们掌握怎么在python中利用添加实现一个重载加法的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

怎么在python中利用添加实现一个重载加法