Muchas veces, los datos que manejamos pueden no estar en la forma deseada para ninguna aplicación y deben pasar por la etapa de preprocesamiento. Uno de esos tipos de formularios puede ser un número en forma de string que también es una lista en una lista y debemos segregarlo para que sean números enteros separados por dígitos. Analicemos ciertas formas en que se puede resolver este problema.
Método #1: Usar la comprensión de listas
Este problema se puede tratar con la comprensión de listas, como una forma abreviada de bucles genéricos que necesitaríamos ejecutar para realizar esta tarea en particular al iterar cada carácter de string de cada lista y convertirlos a números enteros.
# Python3 code to demonstrate # converting string list to integer list # using list comprehension # initializing list test_list = [['24'], ['45'], ['78'], ['40']] # printing original list print("The original list : " + str(test_list)) # using list comprehension # converting string list to integer list res = [[int(i) for i in sub] for i in test_list for sub in i] # print result print("The list after conversion : " + str(res))
The original list : [['24'], ['45'], ['78'], ['40']] The list after conversion : [[2, 4], [4, 5], [7, 8], [4, 0]]
Método n.º 2: usar map()
+ comprensión de lista
La tarea realizada en la función anterior también se puede reducir para incluir la función de mapa que vincula la conversión a entero a una función y el resto de la tarea se realiza mediante la función de comprensión de lista.
# Python3 code to demonstrate # converting string list to integer list # using list comprehension + map() # initializing list test_list = [['24'], ['45'], ['78'], ['40']] # printing original list print("The original list : " + str(test_list)) # using list comprehension + map() # converting string list to integer list res = [list(map(int, list(sub[0]))) for sub in test_list if sub ] # print result print("The list after conversion : " + str(res))
The original list : [['24'], ['45'], ['78'], ['40']] The list after conversion : [[2, 4], [4, 5], [7, 8], [4, 0]]
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