如何使用列表列表作为Python函数的参数
我试图写一个函数,自动计算等价向量,但我得到了一个错误如何使用列表列表作为Python函数的参数,python,function,Python,Function,我试图写一个函数,自动计算等价向量,但我得到了一个错误 def vector(lst): import math Sfy , Sfx = 0 for i in lst: fy = i[0]/math.sin(i[1]) fx = i[0]/math.cos(i[1]) if 90 < i[1] < 180: fx = -1*fx if 180 <= i[1] <= 270: fx = -1*fx
def vector(lst):
import math
Sfy , Sfx = 0
for i in lst:
fy = i[0]/math.sin(i[1])
fx = i[0]/math.cos(i[1])
if 90 < i[1] < 180:
fx = -1*fx
if 180 <= i[1] <= 270:
fx = -1*fx
fy = -1*fy
if 270 < i[1] < 360:
fy = -1*fy
print(fx , fy)
Sfy = Sfy + fy
Sfx = Sfx + fx
if Sfx < 0 and Sfy > 0:
A = 90
elif Sfx < 0 and Sfy < 0:
A = 180
elif Sfx > 0 and Sfy < 0:
A = 270
R = math.sqrt(Sfy*Sfy + Sfx*Sfx) #R is for the finale vector force and A is for its angle
A += math.asin(R/Sfy)
print(R + "(N)<" + A)
def矢量(lst):
输入数学
Sfy,Sfx=0
对于lst中的i:
fy=i[0]/math.sin(i[1])
fx=i[0]/math.cos(i[1])
如果90打印(R+“(N)如果您给出:向量([100260],[5080]),您已经插入了2个列表。
所以实际上你已经通过了两个列表,而不是一个列表
对于列表列表,您必须给出:vector([[100,260],[50,80]])
您没有传递列表列表。您传递了两个列表。另外,请使用一致的缩进。将其作为单个列表:[[100,260],[50,80]]
。如果您阅读了错误消息,它会准确地告诉您问题所在。您的函数定义为获取一个参数def vector(lst)
,并且您提供了两个vector([100260],[50,80])
如果有效,请接受答案。