定义一个三维向量类,并定义相应得特殊方法实现两个该类对象之间得加减运算(要求支持运算符+、-),实现该类对象与标量得乘除运算(要求支持运算符*、/),以及向量长度得计算(要求使用属性实现)
class MyArray:
def __init__(self,x,y,z):
self.__x=x
self.__y=y
self.__z=z
def add(self,a):
x=self.__x+a.__x
y=self.__y+a.__y
z=self.__z+a.__z
print("和=({},{},{})".format(x,y,z))
def sub(self,a):
x=self.__x-a.__x
y=self.__y-a.__y
z=self.__z-a.__z
print("差=({},{},{})".format(x, y, z))
def mul(self,a):
x=self.__x*a
y=self.__y*a
z=self.__z*a
print("乘积=({},{},{})".format(x, y, z))
def truediv(self,a):
x=self.__x/a
y=self.__y/a
z=self.__z/a
print("商=({},{},{})".format(x, y, z))
def length(self):
a=pow(pow(self.__x,2)+pow(self.__y,2)+pow(self.__z,2),0.5)
print("长度为:{}".format(round(a,3)))
print('请输入六个数a,b,c,d,e,f:')
a,b,c,d,e,f=map(int,input().split())
print('N1:',(a,b,c))
print('N2:',(d,e,f))
n1=MyArray(a,b,c)
n2=MyArray(d,e,f)
n1.add(n2)
n1.sub(n2)
n1.mul(2)
n1.truediv(2)
n1.length()