A veces, mientras trabajamos con datos, podemos tener un problema en el que recibimos series de listas con datos en formato de string, que deseamos acumular como lista. Analicemos ciertas formas en que se puede realizar esta tarea.
Método #1: Usar bucle +int()
Este es el método de fuerza bruta para realizar esta tarea. En esto, ejecutamos un bucle para toda la lista, convertimos cada string en un número entero y realizamos la suma por lista y la almacenamos en una lista separada.
# Python3 code to demonstrate working of # Summation of String Integer lists # using loop + int() # initialize list test_list = [['1', '4'], ['5', '6'], ['7', '10']] # printing original list print("The original list : " + str(test_list)) # Summation of String Integer lists # using loop + int() res = [] for sub in test_list: par_sum = 0 for ele in sub: par_sum = par_sum + int(ele) res.append(par_sum) # printing result print("List after summation of nested string lists : " + str(res))
The original list : [['1', '4'], ['5', '6'], ['7', '10']] List after summation of nested string lists : [5, 11, 17]
Método #2: Uso sum() + int()
de la comprensión de lista +
Esta es la forma abreviada con la ayuda de la cual se puede realizar esta tarea. En esto, ejecutamos un bucle en las listas usando la comprensión de listas y extraemos la suma usando sum().
# Python3 code to demonstrate working of # Summation of String Integer lists # using sum() + int() + list comprehension # initialize list test_list = [['1', '4'], ['5', '6'], ['7', '10']] # printing original list print("The original list : " + str(test_list)) # Summation of String Integer lists # using sum() + int() + list comprehension res = [sum(int(ele) for ele in sub) for sub in test_list] # printing result print("List after summation of nested string lists : " + str(res))
The original list : [['1', '4'], ['5', '6'], ['7', '10']] List after summation of nested string lists : [5, 11, 17]
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