math.cos(x) 没有返回正确的值?

math.cos(x) not returning correct value?

我刚开始使用 python,并且在使用一个非常基本的程序时遇到困难。我想计算 -20 度的余弦。据我了解,默认值以弧度为单位,所以这是我尝试的以下代码:

import math 


print math.cos(math.degrees(-20))

这输出 (-.7208...),其中答案实际上是 (.9397...)。我确信这有一个非常基本的解决方案,但我尝试了很多不同的方法,但它不会输出正确的结果。提前致谢!

您需要输入弧度,

math.cos(math.radians(-20))

math.radians(-20) 将 -20 度转换为弧度。

math.degrees 取若干弧度,产生 若干度。您需要相反的转换 - 您有多个度数,并且需要生成多个可以传递给 math.cos 的弧度。你需要 math.radians:

math.cos(math.radians(-20))

根据 Python documentation:

math.degrees(x)

Convert angle x from radians to degrees.

这意味着您正试图将 -20 弧度转换为不需要的度数。

另外根据文档:

math.cos(x)

Return the cosine of x radians.

这意味着 math.cos 弧度 而非度数计算传递参数的余弦值。这意味着您的代码当前将 -20 弧度更改为度数,然后找到它的余弦,就好像它是弧度一样……您会明白为什么这是个问题。

您需要将-20度转换为弧度,然后求余弦。使用 math.radians:

math.cos(math.radians(-20))