如何从列矩阵(Python)中提取多个元素?

时间:2021-03-02 20:26:09

标签: python matrix

如果我有一个列矩阵

n =  
[[0.649100404993098]
 [0.548818798116734]
 [-0.526750976336541]]

我想将 n 的值分配给 x、y 和 z。例如x= 0.649100404993098, y=0.548818798116734, z=-0.526750976336541。如果我执行 x,y,z =n,那么它们将被分配为具有所需值的列表。如何直接将值分配给 x、y 和 z?谢谢:)

PS:我运行的代码是

b= 9.166801286935154 ,c= 7.750592706723353 ,d= -7.438943945547988
sig = np.matrix([[b],[c],[d]])
n = np.dot(1/sqrt(b**2+c**2+d**2),sig)
nx, ny, nz = [i for i in n]

2 个答案:

答案 0 :(得分:1)

如果您确定每个元素的长度为 1,您可以试试这个:

nx, ny, nz = [i.item() for i in n]

答案 1 :(得分:1)

您可以通过以下方式获取:

x, y, z = [i[0] for i in n]

如果您有多个列,您可以将其设为 i[j],其中 j 是列索引。