A veces, mientras trabajamos con tuplas, podemos tener un problema en el que tenemos tuplas anidadas y necesitamos extraer elementos que ocurren solos, es decir, que son elementales. Este tipo de problema puede tener aplicaciones en muchos dominios. Analicemos ciertas formas en que se puede resolver este problema.
Método n. ° 1: usar bucle anidado +set()
Las 2 funcionalidades anteriores se pueden usar para resolver este problema en particular. En esto, iteramos cada tupla anidada y agregamos para establecer si el elemento ha ocurrido por primera vez y verificamos cada elemento antes de agregar.
# Python3 code to demonstrate working of # Unique elements in nested tuple # Using nested loop + set() # initialize list test_list = [(3, 4, 5), (4, 5, 7), (1, 4)] # printing original list print("The original list : " + str(test_list)) # Unique elements in nested tuple # Using nested loop + set() res = [] temp = set() for inner in test_list: for ele in inner: if not ele in temp: temp.add(ele) res.append(ele) # printing result print("Unique elements in nested tuples are : " + str(res))
The original list : [(3, 4, 5), (4, 5, 7), (1, 4)] Unique elements in nested tuples are : [3, 4, 5, 7, 1]
Método n.º 2: usarset() + from_iterable()
la combinación de las funcionalidades anteriores se puede usar para resolver esto. Esto se hace en 2 pasos, primero, aplanamos la lista anidada y luego encontramos distintivos usando set()
.
# Python3 code to demonstrate working of # Unique elements in nested tuple # Using from_iterable() + set() from itertools import chain # initialize list test_list = [(3, 4, 5), (4, 5, 7), (1, 4)] # printing original list print("The original list : " + str(test_list)) # Unique elements in nested tuple # Using from_iterable() + set() res = list(set(chain.from_iterable(test_list))) # printing result print("Unique elements in nested tuples are : " + str(res))
The original list : [(3, 4, 5), (4, 5, 7), (1, 4)] Unique elements in nested tuples are : [1, 3, 4, 5, 7]
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