все Python 3mathпонятие
math.atan2
тригонометрия
Арктангенс y/x с учётом квадранта — правильно обрабатывает все знаки. Результат в [-π, π].
Синтаксис
math.atan2(y, x)
Порядок аргументов обратный привычной записи дроби: сначала y, потом x. Перепутать легко, а ошибка тихая — вместо исключения вы получите зеркально отражённый угол. Для точек ниже оси x результат отрицательный; если нужен диапазон [0, 2π), приведите сами: math.atan2(y, x) % (2 * math.pi).
Примеры
import math
print(math.atan2(1, 1)) # → 0.7853... (π/4, I квадрант)
print(math.atan2(1, -1)) # → 2.3561... (3π/4, II квадрант)
print(math.atan2(-1, -1)) # → -2.3561... (III)
print(math.atan2(0, 1)) # → 0.0
print(math.degrees(math.atan2(1, 0))) # → 90.0
print(math.degrees(math.atan2(-1, 0))) # → -90.0
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности