Python 将实例变量从一个实例访问到另一个实例
我正在学习python。假设我的类名为Python 将实例变量从一个实例访问到另一个实例,python,oop,Python,Oop,我正在学习python。假设我的类名为Dog,两个实例名为Fido和Molly。我想通过使用\uuuu add\uuuu重载+运算符来更改second instance的属性,因此当我键入Fido+Molly 将设置Molly.toucted属性。如何从一个实例访问python中部署的另一个实例的属性?我想您对这个特殊方法的工作方式很感兴趣。本质上,它是作为x来工作的。其中x和y可以是实例对象。请参见其实现的示例 您需要在Dog中重载\uuu添加
Dog
,两个实例名为Fido
和Molly
。我想通过使用\uuuu add\uuuu
重载+
运算符来更改second instance的属性,因此当我键入Fido+Molly
将设置
Molly.toucted
属性。如何从一个实例访问python中部署的另一个实例的属性?我想您对这个特殊方法的工作方式很感兴趣。本质上,它是作为x来工作的。其中x
和y
可以是实例对象。请参见其实现的示例
您需要在Dog
中重载\uuu添加
,以返回更新y.toucted
属性的内容。例如:
class Dog(object):
def __init__(self, touched):
self.touched = touched
def __add__(self, other):
other.touched = other.touched + self.touched
#return None # optional, explicit
fido = Dog(1)
molly = Dog(2)
fido + molly
molly.touched
# 3
我想你对这种特殊方法的工作原理很感兴趣。本质上,它是作为x来工作的。其中x
和y
可以是实例对象。请参见其实现的示例
您需要在Dog
中重载\uuu添加
,以返回更新y.toucted
属性的内容。例如:
class Dog(object):
def __init__(self, touched):
self.touched = touched
def __add__(self, other):
other.touched = other.touched + self.touched
#return None # optional, explicit
fido = Dog(1)
molly = Dog(2)
fido + molly
molly.touched
# 3
return None
是多余的。是的,但对于不熟悉Python的人来说是明确的。顺便说一句,我将做一个注释return None
是多余的。是的,但是对于不熟悉Python的人来说,它是明确的。我将发表评论