Dada una lista de enteros, ordenar por dígitos de unidad.
Entrada : test_list = [76, 434, 23, 22342]
Salida : [22342, 23, 434, 76]
Explicación : 2 < 3 < 4 < 6, ordenados por dígitos unitarios.Entrada : test_list = [76, 4349, 23, 22342]
Salida : [22342, 23, 76, 4349]
Explicación : 2 < 3 < 6 < 9, ordenados por dígitos unitarios.
Método #1: Usar sort() + str()
En esto, realizamos la clasificación usando sort() y str() se usa para convertir números enteros en strings y luego ordenar por último dígito.
Python3
# Python3 code to demonstrate working of # Sort by Units Digit in List # Using sort() + str() # helpr_fnc to sort def unit_sort(ele): # get last element return str(ele)[-1] # initializing lists test_list = [76, 434, 23, 22342] # printing original lists print("The original list is : " + str(test_list)) # inplace sort by unit digits test_list.sort(key=unit_sort) # printing result print("The unit sorted list : " + str(test_list))
Producción:
The original list is : [76, 434, 23, 22342] The unit sorted list : [22342, 23, 434, 76]
Método #2: Usar sorted() + lambda + str()
En esto, realizamos la tarea de ordenar usando sorted() y la función lambda se usa para evitar llamadas a funciones externas.
Python3
# Python3 code to demonstrate working of # Sort by Units Digit in List # Using sorted() + lambda + str() # initializing lists test_list = [76, 434, 23, 22342] # printing original lists print("The original list is : " + str(test_list)) # inplace sort by unit digits res = sorted(test_list, key=lambda sub: str(sub)[-1]) # printing result print("The unit sorted list : " + str(res))
Producción:
The original list is : [76, 434, 23, 22342] The unit sorted list : [22342, 23, 434, 76]
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA