4

OK、別の正の関数の値を最大化するリストの要素を見つけるこの単純な関数があります。

def get_max(f, s):
    # f is a function and s is an iterable

    best = None
    best_value = -1

    for element in s:
        this_value = f(element)
        if this_value > best_value:
            best = element
            best_value = this_value
    return best

しかし、私はそれが行う単純な作業には非常に長いと思います。実際、それは私にJava(brrrr)を思い出させます。誰かが私にこれを行うためのよりパイソンでクリーンな方法を見せてもらえますか?

ありがとう!
マヌエル

4

1 に答える 1

15
def get_max(f, s):
  return max(s, key=f)
于 2010-02-11T05:35:52.197 に答える