Como crear un set en python

my_set={3,4,5}
print(my_set)  #>> {3,4,5}
my_set2={"hola",23.3,False,True}
print(my_set2) #>> {23.3, "Hola", True, False}
my_set3={3,3,2}
print(my_set3) #>> {2,3}
my_set4={[1,2,3],4}
print(my_set4) ##Traceback error   
#la lista es un elemento mutable 

Como definir set vacios

empty_set={}
print(type(empty_set))  #>> <class 'dict'>

empty_set=set()
print(type(empty_set))  #>> <class 'set'>

Para definir un set vacio se debe usar la funcion **set(),**

Casting con sets

para transformar listas a sets, usamos **set(<valor>)**, si existe elementos repetidos se van a eliminar

my_list=[1,2,1,3,5,5,7]
my_set=set(my_list)
print(my_set)         #>> {1,2,3,5,7}

my_tuple=("hola","hola","hola",1)
my_set2=set(my_tuple)
print(my_set2)        #>>{'hola',1}

Añadir elementos a un set

usamos el metodo add (para un unico elemento) o update (para una lista de elementos)

my_Set={1,2,3}

my_set.add(4)
print(my_set) #>> {1,2,4,3}
my_set.update([1,2,5])
print(my_set)  #>>{2,4,1,3,5}

my_set.update([1,7,2],{6,8})
print(my_set)  #>> {1,2,3,4,5,6,7,8}

Borrar elementos a un set

existen dos metodos discard o remove

my_set={1,2,3,4,5,6,7,8}
my_set.discard(12)
my_set.discard(1)  
print(my_set)#>> {2,3,4,5,6,7,8}

my_set.remove(5)
print(my_set)     #>>{2,3,4,6,7,8}
my_set.remove(10) ##>> Traceback error 

para borrar un elemento aleatorio usamos el método pop

my_set={1,2,3,4,5,6,7,8}
my_set.pop()
print(my_set) #>> {3,2,4,1,5,6,8}

para eliminar todos los valores de un set usamos el método **clear**