Python_列表相减(判断长度后长的减短的)
#定义一个方法,可进行列表相减
class V(object): def __init__(self,*value): self.value=value def __sub__(self,other): #取出较长的一个对象,并且取出短的对象的长度备用 r=len(self.value) s=len(other.value) if s>r: r,s=s,r l=[] #减法结果临时存放列表 for i in range(r): #当被减数位数长的时候,长出部分的计算方式是... if len(self.value)>s and i>s-1: l.append(self.value[i]) #当减数位数长的时候,长出部分的计算方式是... elif len(other.value)>s and i>s-1: l.append(-other.value[i]) #在被减数和减数都有数的位置的处理方式是... else: l.append(self.value[i]-other.value[i]) #将运算(减法)结果转为v类型并返回 l=V(*l) return l #对str进行定制,使以列表形式输出 def __str__(self): return str(self.value) #转成字符类型, a=V(1,2,3,4,5,6) b=V(1,2,3) print(a-b)