gpt4 book ai didi

python - 如何在python中找到离零最远的值

转载 作者:行者123 更新时间:2023-11-28 21:56:50 24 4
gpt4 key购买 nike

我偶然发现了一个问题,但我很难找到解决方案。我有一个坐标列表,包含正值和负值,我需要在列表中找到距离零最远的 x 坐标。这有一个非常简单的解决方案:

foo = max(map(lambda x: abs(x[0]),bar))

其中 bar 是坐标元组的列表。

问题在于,一旦找到离零最远的值,我必须保留其原始符号(正号或负号)以供以后计算。我无法在 bar 中索引 foo 以找到原始值,因为 foo 在列表中可能是负数,因此无法被索引。另一种可能的解决方案可能是:

foo = max(enumerate(bar),key=lambda x: abs(x[1][0]))

然后使用枚举在bar中找到原始值的索引:

bar=[[-1,3],[5,2],[-8,2]]
#bar enumerated: [(0,[-1,3]),(1,[5,2]),(2,[-8,2])]

foo=max(enumerate(bar),key=lambda x: abs(x[1][0]))
#foo = (2,[8,2])
foo = bar[foo[0]]

但我想知道这个问题还有哪些其他可能的解决方案?

编辑:我应该注意到 bar 的值可能在 10,000 到 100,000 之间

最佳答案

嗯,事实证明,简单的代码:

max(bar, key=lambda x: abs(x[0]))

实际上会正确返回负值;

bar=[[-1,3],[5,2],[-8,2]]
foo=max(bar,key=lambda x: abs(x[0]))
#foo = [-8,2]

不知道为什么我直接浏览了它,我想我只是高估了问题的原始复杂性。

关于python - 如何在python中找到离零最远的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20844602/

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