python-max-Funktion mithilfe von 'key' und lambda-Ausdruck

Ich komme aus OOP-hintergrund und versuchen zu lernen, python.
Ich bin mit der max Funktion verwendet einen lambda-Ausdruck zur Rückgabe der Instanz vom Typ Player mit einer maximalen totalScore unter der Liste players.

def winner():
    w = max(players, key=lambda p: p.totalScore)

Die Funktion korrekt zurückgegeben Instanz vom Typ Player mit einer maximalen totalScore.
Ich bin verwirrt über die folgenden drei Dinge:

  1. Wie funktioniert das max Funktion arbeiten? Was sind die Argumente, die es nimmt? Ich schaute auf die Dokumentation, aber konnte nicht verstehen.
  2. Was ist die Verwendung des Schlüsselworts key im max-Funktion? Ich weiß, es ist auch im Kontext von sort Funktion
  3. Bedeutung der lambda-Ausdruck? Wie Sie zu Lesen? Wie funktionieren Sie?

Diese sind alle sehr noobish konzeptionelle Fragen, aber hilft mir zu verstehen die Sprache. Würde es helfen, wenn Sie ihm geben könnte Beispiele zu erklären.
Dank

Welche Python version?
Haben Sie konsultiert, der Dokumentation?
python 2.7.5
Ich habe in der Dokumentation für die max-Funktion. Nicht wirklich verstanden.
Diese Seite ist jetzt eigentlich die top-Ergebnisse auf Google für python max lambda und vielleicht kann tatsächlich mehr hilfreich für neue Benutzer.

InformationsquelleAutor Vijay | 2013-08-18

Schreibe einen Kommentar