【发布时间】:2022-09-30 18:07:39
【问题描述】:
我有一个具有三个功能的类,它们几乎做相同的事情,但在不同的对象上。而且我认为有更好的编程方法,因为它是代码的重复,但我看不出如何拥有一种模板。这是我的例子:
def averageEndEffectorVelocity(self, samplingSize=cst.AVERAGE_SIZE):
if len(self.eeVelocity) < samplingSize:
return -1
else:
return sum(self.eeVelocity[-samplingSize:])/samplingSize
def averageEndEffectorAcceleration(self, samplingSize=cst.AVERAGE_SIZE):
if len(self.eeAcceleration) < samplingSize:
return -1
else:
return sum(self.eeAcceleration[-samplingSize:])/samplingSize
def averageEndEffectorJerk(self, samplingSize=cst.AVERAGE_SIZE):
if len(self.eeJerk) < samplingSize:
return -1
else:
return sum(self.eeJerk[-samplingSize:])/samplingSize
可以看到,每个函数都在计算最后一个samplingSize 速度、加速度和加加速度值的平均值。有没有办法获得更好的代码?