A veces, es posible que tengamos que realizar ciertos problemas relacionados con las tuplas en los que necesitamos segregar los elementos de la tupla para combinarlos con cada elemento de la tupla compleja (como una lista). Esto puede tener aplicación en situaciones en las que necesitamos combinar valores para formar un todo. Analicemos ciertas formas en que esto se puede realizar.
Método #1: Usar la comprensión de listas
Podemos resolver este problema en particular usando la técnica de comprensión de listas en la que podemos iterar para cada lista de tuplas y unirla con otro atributo de tupla para unir.
# Python3 code to demonstrate # Combining tuples in list of tuples # Using list comprehension # initializing list test_list = [([1, 2, 3], 'gfg'), ([5, 4, 3], 'cs')] # printing original list print("The original list : " + str(test_list)) # Using list comprehension # Combining tuples in list of tuples res = [ (tup1, tup2) for i, tup2 in test_list for tup1 in i ] # print result print("The list tuple combination : " + str(res))
La lista original: [([1, 2, 3], ‘gfg’), ([5, 4, 3], ‘cs’)]
La combinación de tupla de lista: [(1, ‘gfg’), (2, ‘gfg’), (3, ‘gfg’), (5, ‘cs’), (4, ‘cs’), (3, ‘cs’)]
Método n.º 2: uso de product()
la comprensión de listas +
Además de usar la tupla para generar tuplas, la función de producto se puede usar para obtener el producto cartesiano de los elementos de la lista con el elemento de la tupla, usando el iterador internamente.
# Python3 code to demonstrate # Combining tuples in list of tuples # Using product() + list comprehension from itertools import product # initializing list test_list = [([1, 2, 3], 'gfg'), ([5, 4, 3], 'cs')] # printing original list print("The original list : " + str(test_list)) # Using product() + list comprehension # Combining tuples in list of tuples res = [ele for i, j in test_list for ele in product(i, [j])] # print result print("The list tuple combination : " + str(res))
La lista original: [([1, 2, 3], ‘gfg’), ([5, 4, 3], ‘cs’)]
La combinación de tupla de lista: [(1, ‘gfg’), (2, ‘gfg’), (3, ‘gfg’), (5, ‘cs’), (4, ‘cs’), (3, ‘cs’)]
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