Função python max usando 'key' e expressão lambda
Eu venho de fundo OOP e tentando aprender python. Estou usando omax
função que usa uma expressão lambda para retornar a instância do tipoPlayer
tendo o máximototalScore
entre a listaplayers
.
def winner():
w = max(players, key=lambda p: p.totalScore)
A função retorna corretamente a instância do tipoPlayer
tendo o máximototalScore
. Estou confuso sobre as três coisas seguintes:
max
trabalho de função? Quais são os argumentos que está tomando? Eu olhei para a documentação, mas não consegui entender.Qual é o uso da palavra-chavekey
na função max? Eu sei que também é usado no contexto desort
funçãoSignificado da expressão lambda? Como lê-los? Como eles funcionam?Estas são todas perguntas conceituais muito noobianas, mas me ajudarão a entender a linguagem. Ajudaria se você pudesse dar exemplos para explicar. obrigado