gpt4 book ai didi

python - 一种在 Python 中按欧氏距离对复数进行排序的有效方法

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:43:01 24 4
gpt4 key购买 nike

我有几个复数需要按它们的欧式距离排序。我这样解决这个问题:

            # A1x = Lowest Point (LP)
# B1x = Point 1 (P1)
# B4x = Point 2 (P2)

C1 = euclidean(A1x, B1x) # Build the distance between LP and P1
C4 = euclidean(A1x, B4x) # Build the distance between LP and P2

array = np.array([C1, C4]) # Put the distances into an array...
array.sort() # ...and sort it.

# If the the distance between LP and P1 is the first element in the array
# then take P1 as y_max value etc.

if C1 == array[0]:
y_max = B1x

if C4 == array[1]:
y_min = B4x

if C4 == array[0]:
y_max = B4x

if C1 == array[1]:
y_min = B1x

这种方式适用于三点或四点。但是,现在我得到了八九分,并且上述方式变得有点讨厌,因为我必须为每个单点编写 if 条件。因此,我想问你是否知道一种更好的方法来按欧氏距离对复数进行排序。

最佳答案

from functools import partial

complex_number_list.sort(key=partial(euclidean, A1x))

您也可以使用 abs 代替 euclidean

关于python - 一种在 Python 中按欧氏距离对复数进行排序的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40329550/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com