[Python-Dev] argmax? (original) (raw)

Miki Tebeka miki.tebeka at zoran.com
Thu Jan 8 04:08:56 EST 2004


Hello All,

Do you think there is a place for an "argmax" function (which I use a lot) in the standard library?

I'm thinking in the lines of:

def argmax(items, func, cmp=cmp): '''argmax(items, func) -> max_item, max_value''' it = iter(items) # Initial values try: item = it.next() except StopIteration: raise ValueError("can't run over empty sequence") val = func(item)

for i in it:
    v = func(i)
    if cmp(v, val) == 1:
        item = i
        val = v
return item, val

def argmin(items, func, cmp=cmp): '''argmin(items, func) -> min_item, min_value''' return argmax(items, func, lambda x,y : -cmp(x,y))

Thanks.


Smile, damn it, smile.

lambda msg: { "name" : "Miki Tebeka", "email" : "miki.tebeka at zoran.com", "url" : "http://www.cs.bgu.ac.il/~tebeka", "quote" : "The only difference between children and adults "
"is the price of the toys" }[msg]



More information about the Python-Dev mailing list