Python – Rectificación de tipos de datos de array

A veces, mientras trabajamos con datos, podemos tener problemas en los que necesitamos realizar la rectificación de los tipos de datos de la lista, es decir, convertir las strings de números en números cuando sea necesario. Esto también puede ocurrir en forma de array. Analicemos ciertas formas en que se puede realizar esta tarea.

Método #1: Uso de la comprensión de listas +isdigit()
Esta es una de las formas en que se puede realizar esta tarea. En esto, iteramos cada elemento de Matrix y verificamos la string de dígitos usando el encasillado y luego realizamos una conversión.

# Python3 code to demonstrate 
# Matrix Data Type Rectification
# using isdigit() + list comprehension
  
# Initializing list
test_list = [['5', 'GFG'], ['1', '3'], ['is', '11'], ['1', 'best']]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Matrix Data Type Rectification
# using isdigit() + list comprehension
res = [[int(ele) if ele.isdigit() else ele for ele in sub] for sub in test_list]
  
# printing result 
print ("The rectified Matrix is : " + str(res))
Producción :

The original list is : [['5', 'GFG'], ['1', '3'], ['is', '11'], ['1', 'best']]
The rectified Matrix is : [[5, 'GFG'], [1, 3], ['is', 11], [1, 'best']]

Método n.º 2: usarmap() + isdigit()
Esto es otra forma más en la que se puede realizar esta tarea. En esto, extendemos la lógica a cada elemento usando map() en lugar de la comprensión de listas.

# Python3 code to demonstrate 
# Matrix Data Type Rectification
# using map() + isdigit()
  
# Initializing list
test_list = [['5', 'GFG'], ['1', '3'], ['is', '11'], ['1', 'best']]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Matrix Data Type Rectification
# using map() + isdigit()
res = [list(map(lambda ele: int(ele) if ele.isdigit() else ele, sub)) for sub in test_list]
  
# printing result 
print ("The rectified Matrix is : " + str(res))
Producción :

The original list is : [['5', 'GFG'], ['1', '3'], ['is', '11'], ['1', 'best']]
The rectified Matrix is : [[5, 'GFG'], [1, 3], ['is', 11], [1, '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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *