En este artículo dado Lista de conjuntos, la tarea es escribir un programa de Python para realizar su intersección.
Ejemplos:
Entrada: lista_prueba = [{5, 3, 6, 7}, {1, 3, 5, 2}, {7, 3, 8, 5}, {8, 4, 5, 3}]
Salida: {3, 5}
Explicación: 3 y 5 están presentes en todos los conjuntos.
Entrada: lista_prueba = [{5, 3, 6, 7}, {1, 3, 5, 2}, {7, 3, 8, 5}, {8, 4, 5, 4}]
Salida: {5}
Explicación: 5 está presente en todos los conjuntos.
Método n.º 1: usar el operador de intersection() + *
En esto, realizamos tareas para obtener la intersección usando la intersection() y el operador * se usa para agrupar todos los conjuntos.
Python3
# Python3 code to demonstrate working of # Multiple Sets Intersection # Using intersection() + * operator # initializing list test_list = [{5, 3, 6, 7}, {1, 3, 5, 2}, {7, 3, 8, 5}, {8, 4, 5, 3}] # printing original list print("The original list is : " + str(test_list)) # getting all sets intersection using intersection() res = set.intersection(*test_list) # printing result print("Intersected Sets : " + str(res))
Producción:
La lista original es: [{3, 5, 6, 7}, {1, 2, 3, 5}, {8, 3, 5, 7}, {8, 3, 4, 5}]
Conjuntos intersecados: {3, 5}
Método #2: Usar el operador reduce() + and_
En esto, realizamos la tarea de intersección usando el operador and_ y reduce() hace la tarea de empaquetar todos los conjuntos para la operación requerida.
Python3
# Python3 code to demonstrate working of # Multiple Sets Intersection # Using reduce() + and_ operator from operator import and_ from functools import reduce # initializing list test_list = [{5, 3, 6, 7}, {1, 3, 5, 2}, {7, 3, 8, 5}, {8, 4, 5, 3}] # printing original list print("The original list is : " + str(test_list)) # getting all sets intersection using and_ operator res = set(reduce(and_, test_list)) # printing result print("Intersected Sets : " + str(res))
Producción:
La lista original es: [{3, 5, 6, 7}, {1, 2, 3, 5}, {8, 3, 5, 7}, {8, 3, 4, 5}]
Conjuntos intersecados: {3, 5}
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