все Python 3mathпонятие
math.hypot
геометрия
Евклидово расстояние от начала координат. Python 3.8+: любое число аргументов.
Синтаксис
math.hypot(*coordinates)
hypot() считает не «в лоб»: промежуточные значения масштабируются, поэтому там, где sqrt(x*x + y*y) уже переполнится или потеряет значащие цифры, hypot() вернёт нормальный ответ. Для расстояния между двумя точками не вычитайте координаты руками — есть math.dist(p, q), которая делает это сама. Приём произвольного числа аргументов появился только в 3.8: в 3.7 и старше hypot() принимает ровно два.
Примеры
import math
print(math.hypot(3, 4)) # → 5.0
print(math.hypot(5, 12)) # → 13.0
print(math.hypot(1, 1)) # → 1.41421...
print(math.hypot(0, 5)) # → 5.0
print(math.hypot(1, 1, 1)) # → 1.732... (3D)
print(math.hypot(3, 4, 0)) # → 5.0
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности