Python添加方法

Python添加方法,python,python-3.x,Python,Python 3.x,我正在尝试重写\u添加方法。我得到一个错误: 点3=点1+点2 TypeError:+:“点”和“点”的操作数类型不受支持 我错过了什么?请帮忙。这是我的第一个Python类 from math import sqrt class Point(object): def __init__(self,x,y,z): self.x = x self.y = y self.z = z

我正在尝试重写
\u添加
方法。我得到一个错误: 点3=点1+点2 TypeError:+:“点”和“点”的操作数类型不受支持

我错过了什么?请帮忙。这是我的第一个Python类

from math import sqrt                
            
class Point(object):

    def __init__(self,x,y,z):
        self.x = x
        self.y = y
        self.z = z

    def __str__(self):
        return "%i,%i,%i"%(self.x, self.y, self.z)
    
    def _add_(self, other):
        TotalX = self.x + other.x
        TotalY = self.y + other.y
        TotalZ = self.z + other.z
        return Point(TotalX, TotalY, TotalZ)

    def Distance(self, other):
        val =0
        val = ((self.x - other.x)**2+ (self.y - other.y)**2 + (self.z - other.z)**2)
        return val 

print ("Just defined method")    
Point1= Point(x=4, y=2, z=9)
Point2= Point(x=5, y=3, z=10)
Point3 = Point1 + Point2

            
谢谢,
灌木丛。

它是
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
,而不是
\uuuuuuuuuuuuu。Python中的所有魔术方法,例如加法,都使用两个前导下划线和两个尾随下划线。有关Python数据模型的详细参考,包括所有文档化的魔术方法,请参阅。

它是
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
。Python中的所有魔术方法,例如加法,都使用两个前导下划线和两个尾随下划线。有关Python数据模型的详细参考,包括所有文档化的魔术方法,请参阅。

您的缩进已损坏,请修复。方法
距离
的缩进不正确。。。请通过编辑您的问题来纠正这一点,谢谢Stephen和Harshit-缩进问题只是在粘贴到这里时出现的。Alexander指出了我的错误。您的缩进已损坏,请修复。方法
距离
的缩进不正确。。。请通过编辑您的问题来纠正这一点,谢谢Stephen和Harshit-缩进问题只是在粘贴到这里时出现的。亚历山大指出了我的错误。谢谢亚历山大。我在这个错误中浪费了1个小时:(@ShrutiSinghal如果我解决了你的问题,请将问题标记为已回答。很高兴帮助。谢谢亚历山大。我在这个错误中浪费了1个小时:(@ShrutiSinghal如果我解决了你的问题,请将问题标记为已回答。很高兴帮助。