gpt4 book ai didi

Python,lambda,找到最小值

转载 作者:太空狗 更新时间:2023-10-30 00:20:49 25 4
gpt4 key购买 nike

我有 foreach 函数,它在它包含的每个元素上调用指定的函数。我想从 thise 元素中获得最少的东西,但我不知道如何编写 lambda 或函数,甚至不知道如何管理它的类。感谢您的帮助。


我这样使用我的 foreach 函数:

o.foreach( lambda i: i.call() )

o.foreach( I.call )

我不喜欢列出 list 或其他对象。我想遍历它并找到最小值。

我设法编写了一个类来进行思考,但应该有比这更好的解决方案:

class Min:                                           
def __init__(self,i):
self.i = i
def get_min(self):
return self.i
def set_val(self,o):
if o.val < self.i: self.i = o.val

m = Min( xmin )
self.foreach( m.set_val )
xmin = m.get_min()

好的,所以我想我的 .foreach 方法不是 python 的想法。我应该做我的 Class iterable,因为你所有的解决方案都是基于列表的,这样一切都会变得更容易。

在 C# 中,像这样的 lambda 函数不会有问题,所以我认为 python 也很强大。

最佳答案

Python 内置了 support for finding minimums :

>>> min([1, 2, 3])
1

如果你需要先用一个函数处理列表,你可以用map来完成。 :

>>> def double(x):
... return x * 2
...
>>> min(map(double, [1, 2, 3]))
2

或者你可以使用 list comprehensionsgenerator expressions ,例如:

>>> min(double(x) for x in [1, 2, 3])
2

关于Python,lambda,找到最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1634054/

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