Curso de Programación en Python/List-6

De WikiCabal
Ir a la navegación Ir a la búsqueda

List-6.py

 1 #!/usr/bin/python3
 2 #-*-coding: utf-8 -*-
 3 
 4 def UltimoCaracter( s ):
 5   # Regresa el ultimo caracter en la cadena.
 6   print( "s es {} y s[-1] es {}" .format( s, s[-1] ) )
 7   return s[-1]
 8 
 9 Valores = ["abc", "bca", "cab"]
10 
11 print( "\nLa list Valores, ahorra es:\n{}" .format( Valores ) )
12 
13 # Sort por último caracter en las cadenas.
14 Valores.sort(key=UltimoCaracter)
15 
16 print( "\nLa list Valores después de Valores.sort(key=UltimoCaracter) es:\n{}"
17            .format( Valores ) )
18 
19 # Sort por el segundo caracter en las cadenas usando una expresión lambda.
20 ## lambda s: s[1] es decir def Return( s ): return( s[1] )
21 
22 Valores.sort(key=lambda s: s[1])
23 print( "\nLa list Valores después de Valores.sort(key=lambda s: s[1])  es:\n{}"
24            .format( Valores ) )

Resultado

[rrc@Llawyr PythonClase]$ ./List-6.py

La list Valores, ahorra es:
['abc', 'bca', 'cab']
s es abc y s[-1] es c
s es bca y s[-1] es a
s es cab y s[-1] es b

La list Valores después de Valores.sort(key=UltimoCaracter) es:
['bca', 'cab', 'abc']

La list Valores después de Valores.sort(key=lambda s: s[1])  es:
['cab', 'abc', 'bca']

Explicación