La unión de una lista significa que debemos tomar todos los elementos de la lista A y la lista B (puede haber más de dos listas) y ponerlos dentro de una sola lista nueva. Hay varios órdenes en los que podemos combinar las listas. Por ejemplo, podemos mantener la repetición y el orden o eliminar los elementos repetidos en la lista final y así sucesivamente.
Ejemplos:
Maintained repetition only Input : lst1 = [23, 15, 2, 14, 14, 16, 20 ,52] lst2 = [2, 48, 15, 12, 26, 32, 47, 54] Output : [23, 15, 2, 14, 14, 16, 20, 52, 2, 48, 15, 12, 26, 32, 47, 54] Maintained repetition and order Input : lst1 = [23, 15, 2, 14, 14, 16, 20 ,52] lst2 = [2, 48, 15, 12, 26, 32, 47, 54] Output : [2, 2, 12, 14, 14, 15, 15, 16, 20, 23, 26, 32, 47, 48, 52, 54] Without repetition Input : lst1 = [23, 15, 2, 14, 14, 16, 20 ,52] lst2 = [2, 48, 15, 12, 26, 32, 47, 54] Output : [32, 2, 12, 14, 15, 16, 48, 47, 20, 52, 54, 23, 26] Union of three lists Input : lst1 = [23, 15, 2, 14, 14, 16, 20 ,52] lst2 = [2, 48, 15, 12, 26, 32, 47, 54] lst3 = [4, 78, 5, 6, 9, 25, 64, 32, 59] Output : [32, 64, 2, 4, 5, 6, 9, 12, 14, 15, 16, 48, 47, 78, 20, 52, 54, 23, 25, 26, 59]
Mantener la repetición
Simplemente podemos usar el operador más «+» para combinar dos listas en una. Esto reflejará la repetición.
# Python program to illustrate union # Maintained repetition def Union(lst1, lst2): final_list = lst1 + lst2 return final_list # Driver Code lst1 = [23, 15, 2, 14, 14, 16, 20 ,52] lst2 = [2, 48, 15, 12, 26, 32, 47, 54] print(Union(lst1, lst2))
Producción:
[23, 15, 2, 14, 14, 16, 20, 52, 2, 48, 15, 12, 26, 32, 47, 54]
Mantener tanto la repetición como el orden
Para mantener el orden de aparición en la nueva lista necesitamos usar la función sorted() , pasando la adición de dos listas (más operadas, como en el problema anterior) como parámetros.
# Python program to illustrate union # Maintained repetition and order def Union(lst1, lst2): final_list = sorted(lst1 + lst2) return final_list # Driver Code lst1 = [23, 15, 2, 14, 14, 16, 20 ,52] lst2 = [2, 48, 15, 12, 26, 32, 47, 54] print(Union(lst1, lst2))
Producción:
[2, 2, 12, 14, 14, 15, 15, 16, 20, 23, 26, 32, 47, 48, 52, 54]
sin repetición
Para deshacernos de todos los elementos repetitivos de la lista inicial, usamos la función set() en ambas listas, individualmente. Luego los agregamos usando el operador “+” y los pasamos como una nueva lista.
# Python program to illustrate union # Without repetition def Union(lst1, lst2): final_list = list(set(lst1) | set(lst2)) return final_list # Driver Code lst1 = [23, 15, 2, 14, 14, 16, 20 ,52] lst2 = [2, 48, 15, 12, 26, 32, 47, 54] print(Union(lst1, lst2))
Producción:
[32, 2, 12, 14, 15, 16, 48, 47, 20, 52, 54, 23, 26]
Más de dos listas
También podemos hacer una unión de más de dos listas. Esto se puede hacer de manera eficiente usando las funciones set() y union() simultáneamente, como se muestra en el siguiente ejemplo. Esto también se ocupa de la repetición y las previene.
# Python program to illustrate union # Union of three lists def Union(lst1, lst2, lst3): final_list = list(set().union(lst1, lst2, lst3)) return final_list # Driver Code lst1 = [23, 15, 2, 14, 14, 16, 20 ,52] lst2 = [2, 48, 15, 12, 26, 32, 47, 54] lst3 = [4, 78, 5, 6, 9, 25, 64, 32, 59] print(Union(lst1, lst2, lst3))
Producción:
[32, 64, 2, 4, 5, 6, 9, 12, 14, 15, 16, 48, 47, 78, 20, 52, 54, 23, 25, 26, 59]
Publicación traducida automáticamente
Artículo escrito por Chinmoy Lenka y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA