#parameters #tuples #python-3.6
Вопрос:
Мой код должен возвращать евклидово расстояние на основе этих 2 кортежей:
def distance_points((x1, y1), (x2, y2)):
dist = ((x1 - x2)**2 (y1 - y2)**2)** 0.5
return dist
print(distance_points((1.0, 1.0), (2.0, 1.0)))
Ответ №1:
Вы можете переписать свою функцию и выполнить распаковку кортежа в теле функции (как указано в официальном документе PEP 3113-Удаление распаковки параметра кортежа). Например:
def distance_points(p1, p2):
(x1, y1), (x2, y2) = p1, p2
dist = ((x1 - x2) ** 2 (y1 - y2) ** 2) ** 0.5
return dist
print(distance_points((1.0, 1.0), (2.0, 1.0)))
Комментарии:
1. Спасибо! Это решило проблему! 🙂