`
fiftyk
  • 浏览: 22994 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
文章分类
社区版块
存档分类
最新评论

Python运算符重载

阅读更多
#coding=utf-8
class Line:
	def __init__(self,p1,p2):
		self.start = p1
		self.end = p2

	def __sub__(self,p):
		if isinstance(p,Point):
			if p is self.start:
				return self.end
			if p is self.end:
				return self.start
class Point:
	def __init__(self,x,y):
		self.x = x
		self.x = x

	def __add__(self,p):
		if isinstance(p,Point):
			return Line(self,p)

if __name__ == '__main__':
	p1 = Point(1,2)
	p2 = Point(2,3)

	line = p1 + p2# 两个点相加 通过__add__方法
	print l
	#>><__main__.Line instance at 0x02220738>
	
	print line - p1# 线减去一个点 通过__sub__方法
	#>><__main__.Point instance at 0x02220710>
 
0
2
分享到:
评论

相关推荐

    运算符重载.py python运算符重载

    运算符重载.py python运算符重载

    Python运算符重载用法实例分析

    本文实例讲述了Python运算符重载用法。分享给大家供大家参考。具体如下: 在Python语言中提供了类似于C++的运算符重在功能: 一下为Python运算符重在调用的方法如下: Method Overloads Call for __init__ 构造...

    python 运算符重载 - 自定义分数类 示例

    python 运算符重载 - 自定义分数类 示例

    一篇文章带你了解Python运算符重载.docx

    Python中的运算符重载是一种强大的特性,允许程序员自定义运算符的行为,以便它们在特定类的对象上具有不同的意义。这使得代码更加直观和易于理解,尤其是处理自定义数据结构时。下面我们将深入探讨这个概念。 一、...

    python 运算符重载

    运算符重载 以Rational class 为例,重载运算符 a/b a//b a += b a == b a a &gt; b a != b a a &gt;= b

    Python运算符重载用法实例

    本文实例讲述了Python运算符重载用法。分享给大家供大家参考。具体分析如下: python中,我们在定义类的时候,可以通过实现一些函数来实现重载运算符。 例子如下: # -*- coding:utf-8 -*- ''''' Created on 2013-3...

    python运算符重载.html

    什么是运载符重载?__add__,getitem:索引、分片,setitem:索引赋值,delitem:索引和分片删除,以及如何使用这些方法

    Python正确重载运算符的方法示例详解

    运算符重载是Python编程中的一个重要概念,它允许我们自定义类的行为,使得类的实例能够像内置类型那样使用运算符。本文将详细介绍如何在Python中正确地重载运算符,并通过具体的示例代码来帮助理解这一特性。 ####...

    python-运算符重载.rar

    Python中的运算符重载是面向对象编程的一个重要特性,它允许程序员为自定义的数据类型赋予特定的运算符行为。在Python中,当我们定义一个类并创建了类的对象时,我们可能会希望这些对象能够像内置类型(如整数、...

    python 运算符 供重载参考

    二元运算符 特殊方法 + __add__,__radd__ – __sub__,__rsub__ * __mul__,__rmul__ / __div__,__rdiv__,__truediv__,__rtruediv__ // __floordiv__,__rfloordiv__ % __mod__,__rmod__ ** __...

    python 对象之间的依赖关系和运算符重载 示例

    python 对象之间的依赖关系和运算符重载 示例

    复数类(包括运算符重载)

    运算符重载是C++等支持的对象导向特性,允许我们为已有的运算符赋予新的含义,使其能作用于自定义类型(如复数类)。对于复数类,常见的运算符重载包括加法、减法、乘法和除法。下面是一些示例: #### 加法 ```cpp ...

    Python 110.特殊方法和运算符重载.mp4

    Python 110.特殊方法和运算符重载.mp4

    相关资源图1运算符重载

    相关资源图1运算符重载

    python重载比较运算符.docx

    总之,Python的运算符重载提供了一种强大的机制,使得我们能够自定义类的比较逻辑,使得自定义对象间的比较变得灵活且具有语义意义。这不仅增加了代码的表达力,也使得复杂的数据结构在比较时更加直观和方便。

Global site tag (gtag.js) - Google Analytics