Python Glossary English

все 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Сообщить о неточности