class Force:
def __init__(self,magnitude,angle):
self.magnitude = magnitude
self.angle = angle
def get_horizontal(self):
return self.magnitude * cos(radians(self.angle))
def get_vertical(self):
return self.magnitude * sin(radians(self.angle))
def get_angle(self,use_degrees = True):
if use_degrees:
return self.angle
else:
return radians(self.angle)
def find_net_force(forces):
tot_hor = 0
tot_ver = 0
for i in forces:
tot_hor += i.get_horizontal()
tot_ver += i.get_vertical()
magnitude = (tot_hor ** 2 + tot_ver ** 2) ** 0.5
magnitude = round(magnitude,1)
angle = degrees(atan2((tot_ver),(tot_hor)))
angle = round(angle,1)
force_1 = Force(50, 90)
force_2 = Force(75, -90)
force_3 = Force(100, 0)
forces = [force_1, force_2, force_3]
net_force = find_net_force(forces)
print(net_force.magnitude)
print(nIt_force.get_angle())
执行此代码后,我得到
打印(net_force.magnitude)
AttributeError:'NoneType'对象没有属性'magnitude'
在哪里可以找到错误,正如我所看到的,这与幅度部分有关。
答案 0 :(得分:0)
在底部:
print(net_force.magnitude)
the_force
为空,因为find_net_force
的返回值。
您看到的异常应该有一个堆栈跟踪,显示您的行号。