Você está aqui: Python ::: Dicas & Truques ::: Lista (List) |
Como ordenar uma lista de inteiros em Python de acordo com a soma dos dígitos de seus elementos usando uma função lambdaQuantidade de visualizações: 994 vezes |
|
Nesta dica mostrarei como podemos usar uma função lambda em Python para ordenar uma lista de inteiros de acordo com a soma dos seus dígitos. Este é um código muito interessante e que permitirá um melhor entendimento de funções lambda em Python. Veja o código completo para o exemplo:
# método usado para ordenar a lista de acordo com a soma
# de seus dígitos
def ordenar(vetor):
return sorted(vetor, key=lambda n: sum(int(c) for c in str(n) if c != "-"))
# função principal do programa
def main():
# vamos criar uma lista de inteiros
valores = [21, 10, 8, 32, 70, 41, 40, 11]
# vamos exibir a lista original
print("Lista na ordem original: {0}".format(valores))
# agora vamos ordenar de acordo com a soma dos dígitos
lista_ordenada = ordenar(valores)
print("Lista ordenada: {0}".format(lista_ordenada))
if __name__== "__main__":
main()
Ao executarmos este código Python nós teremos o seguinte resultado: Lista na ordem original: [21, 10, 8, 32, 70, 41, 40, 11] Lista ordenada: [10, 11, 21, 40, 32, 41, 70, 8] |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






