Python: convierte la lista de listas en una lista de conjuntos

Dada una lista que contiene listas, la tarea es escribir un programa en Python para convertirlo en una lista que contenga conjuntos.

Ejemplos:

Input : [[1, 2, 1], [1, 2, 3], [2, 2, 2, 2], [0]]
Output : [{1, 2}, {1, 2, 3}, {2}, {0}]

Input : [[4, 4], [5, 5, 5], [1, 2, 3]]
Output : [{4}, {5}, {1, 2, 3}]

Método 1: usar la comprensión de listas

Esto se puede lograr fácilmente utilizando la comprensión de listas. Simplemente iteramos a través de cada lista convirtiendo las listas en conjuntos.

Python3

# python3 program to convert list
# of lists to a list of sets
  
  
# initializing list
test_list = [[1, 2, 1], [1, 2, 3], [2, 2, 2, 2], [0]]
  
# printing original list
print("The original list of lists : " + str(test_list))
  
# using list comprehension
# convert list of lists to list of sets
res = [set(ele) for ele in test_list]
  
# print result
print("The converted list of sets : " + str(res))

Producción:

he original list of lists : [[1, 2, 1], [1, 2, 3], [2, 2, 2, 2], [0]]
The converted list of sets : [{1, 2}, {1, 2, 3}, {2}, {0}]

Método 2: Usando map() + set

Podemos usar la combinación de función de mapa y operador de conjunto para realizar esta tarea en particular. La función map vincula cada lista y la convierte en el conjunto.

Python3

# Python3 code to demonstrate
# convert list of lists to list of sets
# using map() + set
  
# initializing list
test_list = [[1, 2, 1], [1, 2, 3], [2, 2, 2, 2], [0]]
  
# printing original list
print("The original list of lists : " + str(test_list))
  
# using map() + set
res = list(map(set, test_list))
  
# print result
print("The converted list of sets : " + str(res))

Producción:

The original list of lists : [[1, 2, 1], [1, 2, 3], [2, 2, 2, 2], [0]]
The converted list of sets : [{1, 2}, {1, 2, 3}, {2}, {0}]

Publicación traducida automáticamente

Artículo escrito por thotasravya28 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *