La documentazione per le funzioni interne max
e min
in Python indicano che il parametro key
dovrebbe operare come fa nella funzione sort
. In altre parole, dovrei essere in grado di fare questo:chiave predefinita per Python incorporato max/min funzioni
a = [1, 2, 3, 4]
max(a, key=None)
Tuttavia, questo genera un errore: TypeError: 'NoneType' object is not callable
Ma, se faccio qualcosa di simile con la funzione sort
, ottengo i risultati attesi:
a = [1, 2, 3, 4]
a.sort(key=None)
Nessun errore viene generato e viene utilizzato l'ordinamento predefinito. Diversi libri implicano anche che dovrei essere in grado di farla franca con lo stesso comportamento nelle funzioni max
e min
. Vedi questo estratto da Python in a Nutshell.
È questo il comportamento predefinito delle funzioni max
e min
? Dovrebbe essere? Non dovrebbero corrispondere alla funzione di ordinamento?
Grazie per la risposta. Sapevo che l'effettiva implementazione di queste funzionalità era diversa, ma ero un po 'frustrato dal fatto che tutta la documentazione che ho trovato non rendesse esplicita questa differenza. –
Nessun problema. Se questo risponde alla tua domanda, accettarla è sempre apprezzata. –
"chiave" è un nome davvero terribile ... – OlivierBlanvillain