我正在做一些数学,并且必须用x的sin来做一个值表。
我认为这在Python中会更快,并且很容易同时学习两件事......但我目前正在收到数学错误。
以下是代码:
import math
ang = math.asin(30)
print ang
这是错误:
Traceback (most recent call last):
File "/home/tri/Desktop/maths.py", line 3, in <module>
ang = math.asin(30)
ValueError: math domain error
>>>
我看了一些其他帖子,但无法真正关注它们。
答案 0 :(得分:5)
反正弦函数在[-1,1]之外是undefined。换句话说,30在函数domain之外。这正是异常告诉你的。
如果您正在寻找正弦函数,则将其称为math.sin()
,并期望其参数为弧度。要将度数转换为弧度,请使用math.radians()
。
答案 1 :(得分:4)
Python的math.asin(x)返回x的反正弦值,但x
以弧度为单位。你正在尝试学位。
从wikipedia article,我们可以看到参数应该在-1和1之间。
这个wikipedia article解释了弧度和度数之间的转换。