Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 试图使用另一个stackoverflow答案中的矢量角度公式,但无法将其用于打印角度_Python_Vector_Angle - Fatal编程技术网

Python 试图使用另一个stackoverflow答案中的矢量角度公式,但无法将其用于打印角度

Python 试图使用另一个stackoverflow答案中的矢量角度公式,但无法将其用于打印角度,python,vector,angle,Python,Vector,Angle,我试图用这个问题()中的代码来计算两个向量之间的角度。但是,我无法获得打印/显示的角度 我试过从缩进和非缩进位置打印(夹角)。我还尝试了从缩进和非缩进位置返回(夹角)。然而,我没有包括我认为只是对代码的解释 import numpy as np def unit_vector(vector): np.linalg.norm(vector) def angle_between(p_Sun, p_Titan): v1_u = unit_vector(p_Sun) v2_u

我试图用这个问题()中的代码来计算两个向量之间的角度。但是,我无法获得打印/显示的角度

我试过从缩进和非缩进位置打印(夹角)。我还尝试了从缩进和非缩进位置返回(夹角)。然而,我没有包括我认为只是对代码的解释

import numpy as np

 def unit_vector(vector):
    np.linalg.norm(vector)

def angle_between(p_Sun, p_Titan):

   v1_u = unit_vector(p_Sun)
   v2_u = unit_vector(p_Titan)
   return np.arccos(np.clip(np.dot(v1_u, v2_u), -1.0, 1.0))
print(angle_between(p_Sun, p_Titan))
我希望它以弧度打印角度,但是我得到了错误

"TypeError: unsupported operand type(s) for *: 'NoneType' and 'NoneType'"

当我以不同的方式计算角度时(来自同一篇文章,只是不同的注释),我可以使用
print()函数
获得角度。但是,我不喜欢这种方法,因为它对某些向量对无效。

单位向量函数应写成:

def unit_vector(vector):    
    return vector / np.linalg.norm(vector)
目前,您的函数没有返回任何内容,因此默认情况下它不返回任何内容。这就是为什么会出现非类型相乘的错误。此外,它还计算单个值,即范数。对于单位向量,必须将当前向量除以范数。
希望有帮助

单位向量函数应写成:

def unit_vector(vector):    
    return vector / np.linalg.norm(vector)
目前,您的函数没有返回任何内容,因此默认情况下它不返回任何内容。这就是为什么会出现非类型相乘的错误。此外,它还计算单个值,即范数。对于单位向量,必须将当前向量除以范数。 希望有帮助