A veces, mientras trabajamos con tuplas de Python, podemos tener un problema en el que necesitamos eliminar elementos de tipos de datos particulares de la tupla. Este tipo de problema puede ocurrir en dominios que requieren preprocesamiento de datos. Analicemos ciertas formas en que se puede realizar esta tarea.
Entrada : test_tuple = (4, 5, ‘Gfg’, 7.7, ‘Best’), data_type = str Salida : [4, 5, 7.7] Entrada : test_tuple = (4, 5, ‘Gfg’, 7.7, ‘Best’ ), data_type = float Salida : [4, 5, ‘Gfg’, ‘Best’]
Método #1: Usando loop + isinstance() La combinación de las funcionalidades anteriores se puede usar para resolver este problema. En esto, necesitamos iterar para cada elemento y descartar el elemento si coincide con el tipo de datos, usando isinstance().
Python3
# Python3 code to demonstrate working of # Remove particular data type Elements from Tuple # Using loop + isinstance() # initializing tuple test_tuple = (4, 5, 'Gfg', 7.7, 'Best') # printing original tuple print("The original tuple : " + str(test_tuple)) # initializing data type data_type = int # Remove particular data type Elements from Tuple # Using loop + isinstance() res = [] for ele in test_tuple: if not isinstance(ele, data_type): res.append(ele) # printing result print("The filtered tuple : " + str(res))
The original tuple : (4, 5, 'Gfg', 7.7, 'Best') The filtered tuple : ['Gfg', 7.7, 'Best']
Método n.° 2: Uso de la comprensión de listas + isinstance() Esta es otra forma más en la que se puede realizar esta tarea. En esto, necesitamos realizar una tarea similar usando una taquigrafía por comprensión de lista.
Python3
# Python3 code to demonstrate working of # Remove particular data type Elements from Tuple # Using list comprehension + isinstance() # initializing tuple test_tuple = (4, 5, 'Gfg', 7.7, 'Best') # printing original tuple print("The original tuple : " + str(test_tuple)) # initializing data type data_type = int # Remove particular data type Elements from Tuple # Using list comprehension + isinstance() res = [ele for ele in test_tuple if not isinstance(ele, data_type)] # printing result print("The filtered tuple : " + str(res))
The original tuple : (4, 5, 'Gfg', 7.7, 'Best') The filtered tuple : ['Gfg', 7.7, 'Best']
Método #3: Usar el método type() . El método type() devuelve el tipo de datos de la variable. Verifique el tipo de variable en tupla, si no coincide con el tipo dado, agréguelos a la lista de salida y muestre la lista
Python3
# Python3 code to demonstrate working of # Remove particular data type Elements from Tuple # initializing tuple test_tuple = (4, 5, 'Gfg', 7.7, 'Best') # printing original tuple print("The original tuple : " + str(test_tuple)) # initializing data type data_type = int # Remove particular data type Elements from Tuple res=[] for i in test_tuple: if(not (type(i) is data_type)): res.append(i) # printing result print("The filtered tuple : " + str(res))
The original tuple : (4, 5, 'Gfg', 7.7, 'Best') The filtered tuple : ['Gfg', 7.7, '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