Nicola Ferrari wrote:
ho un dizionario di n elementi.. per prendere il valore massimo faccio
max(dizionario.values()).. esiste un metodo che dato un valore mi
recupera la chiave di questo valore?
Non un metodo efficiente. Un dizionario e' fatto per recuperare
efficientemente il valore data una chiave, non viceversa.
Quello che io farei e' ottenerlo automaticamente durante la scansione
comunque lineare del dizionario che fai per values.
In [1]: d =dict(a=10, b=1000, c=10000)
In [2]: max?
Type: builtin_function_or_method
Base Class: <type 'builtin_function_or_method'>
String Form: <built-in function max>
Namespace: Python builtin
Docstring:
max(iterable[, key=func]) -> value
max(a, b, c, ...[, key=func]) -> value
With a single iterable argument, return its largest item.
With two or more arguments, return the largest argument.
<osserva il parametro key>
In [3]: import operator as op
In [4]: max(d.iteritems(), key=op.itemgetter(1))
Out[4]: ('c', 10000)
Eccoti li il massimo secondo il valore, con bello e pronto anche la sua
chiave.
--
.
..: -enrico-
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python