A veces, mientras trabajamos con datos, podemos tener un problema en el que recibimos datos mixtos y necesitamos convertir los elementos enteros en forma de strings a números enteros. Este tipo de operación puede ser necesaria en el paso de preprocesamiento de datos. Analicemos ciertas formas en que se puede realizar esta tarea.
Método n.° 1: Uso de la comprensión de listas + isdigit()
Esta es una forma en que se puede realizar esta tarea. En esto, verificamos para cada elemento de la string si es un número usando isdigit, y luego lo convertimos a int si es uno. La iteración utiliza la comprensión de listas.
Python3
# Python3 code to demonstrate working of # Convert String numbers to integers in mixed List # using list comprehension + isdigit() # initialize list test_list = ["gfg", "1", "is", "6", "best"] # printing original list print("The original list : " + str(test_list)) # Convert String numbers to integers in mixed List # using list comprehension + isdigit() res = [int(ele) if ele.isdigit() else ele for ele in test_list] # printing result print("List after converting string numbers to integers : " + str(res))
The original list : ['gfg', '1', 'is', '6', 'best'] List after converting string numbers to integers : ['gfg', 1, 'is', 6, 'best']
Método #2: Usar map() + lambda + isdigit()
Esta tarea también se puede realizar usando las funciones anteriores. En esto, realizamos la tarea de iteración usando map() y la función lambda.
Python3
# Python3 code to demonstrate working of # Convert String numbers to integers in mixed List # using map() + lambda + isdigit() # initialize list test_list = ["gfg", "1", "is", "6", "best"] # printing original list print("The original list : " + str(test_list)) # Convert String numbers to integers in mixed List # using map() + lambda + isdigit() res = list(map(lambda ele : int(ele) if ele.isdigit() else ele, test_list)) # printing result print("List after converting string numbers to integers : " + str(res))
The original list : ['gfg', '1', 'is', '6', 'best'] List after converting string numbers to integers : ['gfg', 1, 'is', 6, 'best']
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