все Python 3cmathфункция
cmath.acos()
тригонометрия
Арккосинус комплексного числа. Для вещественных значений вне [-1, 1] даёт чисто мнимый или комплексный результат.
Синтаксис
cmath.acos(z)
Классическая ошибка — угол между векторами через acos(dot / (|a|·|b|)): из-за погрешности отношение бывает 1.0000000000000002. math.acos тогда бросит ValueError, а cmath.acos вернёт мнимое число вроде -2.1e-08j, и ошибка уйдёт дальше незамеченной. acos(2) равен -1.3169578969248166j: вещественной части нет вовсе.
Примеры
import cmath
print(cmath.acos(2)) # → -1.3169578969248166j
print(cmath.acos(0.5).real == cmath.pi / 3) # → False
print(cmath.isclose(cmath.acos(0.5), cmath.pi / 3)) # → True
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности