En este artículo, la tarea es escribir un programa en Python para convertir Matrix en conjuntos de conjuntos.
Ejemplos:
Entrada: test_list = [[5, 6, 3], [1, 7, 9], [8, 2, 0]]
Salida: {conjunto congelado ({8, 0, 2}), conjunto congelado ({1, 9, 7}), conjunto congelado ({3, 5, 6})}
Explicación : convertido a conjuntos de conjuntos congelados para permanecer inmutable y hashable.
Entrada: test_list = [[5, 6, 3], [1, 7, 9]]
Salida: {conjunto congelado ({1, 9, 7}), conjunto congelado ({3, 5, 6})}
Explicación: convertido a conjuntos de conjuntos congelados para permanecer inmutable y hashable.
Método #1: Usar set() + frozenset() + expresión generadora
En esto, realizamos una iteración hasta Matrix en la expresión del generador para obtener conjuntos internos, y el contenedor externo se convierte en conjunto usando set(). El contenedor interno debe ser hashable, por lo tanto, debe ser frozenset() para la creación.
Python3
# Python3 code to demonstrate working of # Convert Matrix to Sets of Set # Using set() + frozenset() + generator expression # initializing list test_list = [[5, 6, 3], [1, 7, 9], [8, 2, 0]] # printing original list print("The original list is : " + str(test_list)) # frozenset() to get inner elements hashable required for set() res = set(frozenset(sub) for sub in test_list) # printing result print("Converted set Matrix : " + str(res))
Producción:
La lista original es: [[5, 6, 3], [1, 7, 9], [8, 2, 0]]
Array de conjunto convertido: {conjunto congelado ({8, 0, 2}), conjunto congelado ({1, 9, 7}), conjunto congelado ({3, 5, 6})}
Método #2: Usando map() + frozenset() + set()
En esto, map() se usa para extender la lógica de convertir contenedores internos a frozenset().
Python3
# Python3 code to demonstrate working of # Convert Matrix to Sets of Set # Using map() + frozenset() + set() # initializing list test_list = [[5, 6, 3], [1, 7, 9], [8, 2, 0]] # printing original list print("The original list is : " + str(test_list)) # map() to extend logic to inner elements res = set(map(frozenset, test_list)) # printing result print("Converted set Matrix : " + str(res))
Producción:
La lista original es: [[5, 6, 3], [1, 7, 9], [8, 2, 0]]
Array de conjunto convertido: {conjunto congelado ({8, 0, 2}), conjunto congelado ({1, 9, 7}), conjunto congelado ({3, 5, 6})}
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