No tienes acceso a esta clase

ยกContinรบa aprendiendo! รšnete y comienza a potenciar tu carrera

Curso Profesional de Python

Curso Profesional de Python

Facundo Garcรญa Martoni

Facundo Garcรญa Martoni

Operaciones con sets

17/21
Recursos

Aportes 166

Preguntas 1

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regรญstrate o inicia sesiรณn para participar.

En caso de que quieran hacer operaciones con sets y hacerlo de forma mรกs explรญcita pueden usar los mรฉtodos:
set1.union(set2)
set1.symmetric_difference(set2)
set1.difference(set2)
set1.intersection(set2)
Y pueden encontrar mรกs mรฉtodos que pueden serles รบtiles aquรญ ๐Ÿ˜„

Pues esto hice yo, creo que los pokemon se pueden llevar muy bien con la programaciรณn (:

pokemon_tipo_fuego = { 'Charizard', 'Moltres' }
pokemon_tipo_volador = { 'Charizard', 'Butterfree', 'Pidgeot', 'Fearow', 'Dodrio', 'Gyarados', 'Aerodactyl',
  'Articuno', 'Zapdos', 'Moltres', 'Dragonite' }
pokemon_tipo_veneno = { 'Butterfree' }
pokemon_tipo_normal = { 'Pidgeot', 'Fearow', 'Dodrio' }
pokemon_tipo_agua = { 'Gyarados' }
pokemon_tipo_roca = { 'Aerodactyl' }
pokemon_tipo_hielo = { 'Articuno' }
pokemon_tipo_electrico = { 'Zapdos' }
pokemon_tipo_dragon = { 'Dragonite' }

my_set1 = pokemon_tipo_fuego | pokemon_tipo_agua
print(f'Pokemon tipo fuego | agua: {my_set1}')

my_set2 = pokemon_tipo_normal & pokemon_tipo_volador
print(f'Pokemon tipo normal & volador: {my_set2}')

my_set3 = pokemon_tipo_volador - pokemon_tipo_fuego
print(f'Pokemon tipo volador - fuego: {my_set3}')

my_set4 = pokemon_tipo_dragon ^ pokemon_tipo_electrico
print(f'Pokemon tipo dragon ^ electrico: {my_set4}')

Mรฉtodos Set

Una tabla que puede ser รบtil:

Reto Cumplido ๐Ÿ˜„

Code

from platform import system
from os import system as console_command


# Utility
def clean_screen() -> None:
  """This function is responsible for cleaning the screen."""

  if system() == 'Windows': console_command('cls')
  else: console_command('clear')


def sets() -> None:
  """Multiple Operations with sets"""
  my_set1 = {'๐ŸŽ', '๐ŸŠ', '๐Ÿ‡', '๐Ÿ“', '๐Ÿˆ'}
  my_set2 = {'๐Ÿ‰', '๐ŸŠ', '๐Ÿ’', '๐Ÿ“', '๐Ÿ‹'}
  print("  โ†’  Set 1:", my_set1)
  print("  โ†’  Set 2:", my_set2)
  print('')
  # Union
  my_set3 = my_set1 | my_set2
  print("     Union                  :", my_set3)
  # Intersection
  my_set4 = my_set1 & my_set2
  print("\n     Intersection           :", my_set4)
  # Difference
  my_set5 = my_set1 - my_set2
  print("\n     Difference set1 - set2 :", my_set5)
  my_set6 = my_set2 - my_set1
  print("\n     Difference set2 - set1 :", my_set6)
  # Symmetric Difference
  my_set7 = my_set1 ^ my_set2
  print("\n     Symmetric Difference   :", my_set7)


if __name__ == '__main__':
  clean_screen()
  print("*** O P E R A T I O N S    W I T H    S E T S ***\n")
  sets()

Operaciones con Sets

Uniรณn

Resultado de juntar todos los elementos que tienen ambos, combinar ambos sets

set_1 = {1, 2, 3}
set_2 = {3, 4, 5}
set_3 = set_1 | set_2 #  -> {1, 2, 3, 4, 5}

# O de forma mas explicita
set_1.union(set_2) #  -> {1, 2, 3, 4, 5}

Intersecciรณn

Los que se repiten en ambos sets

set_1 = {1, 2, 3}
set_2 = {3, 4, 5}
set_3 = set_1 & set_2 #  -> {3}

# O de forma mas explicita
set_1.intersection(set_2) #  -> {3}

Diferencia

Tomar dos sets y de uno quitarle todos los elementos que tiene el otro

set_1 = {1, 2, 3}
set_2 = {3, 4, 5}
set_3 = set_1 - set_2 #  -> {1, 2}

# O de forma mas explicita
set_1.difference(set_2) #  -> {1, 2}

Diferencia Simรฉtrica

Tomar todos los elementos exceptos los que se repiten

set_1 = {1, 2, 3}
set_2 = {3, 4, 5}
set_3 = set_1 ^ set_2 #  -> {1, 2, 4, 5}

# O de forma mas explicita
set_1.symmetric_difference(set_2) #  -> {1, 2, 4, 5}

Operaciones con Sets (Uniรณn, Intersecciรณn y Diferencia)

Uniรณn: Es el resultado de combinar todos los elementos de los conjuntos. En caso de haber elementos repetidos, estos se eliminan. Se utiliza el operador โ€œpipeโ€ ( | ).

Intersecciรณn: Esta operaciรณn nos da como resultados los elementos en comรบn de los conjuntos. Utilizamos el operador โ€œampersandโ€ ( & ).

Diferencia: Nos entrega como resultado el set obtenido de eliminar de un primer set todos los elementos que comunes o que se repiten del segundo set. Se usa el operador โ€œmenosโ€ ( - ).

Diferencia Simรฉtrica: Es la operaciรณn opuesta a la Intersecciรณn, es decir, obtenemos todos los elementos de ambos sets, menos los que se comparten. El operador โ€œcaretโ€ ( ^ ) es el utilizado para esta operaciรณn.

APUNTES DE OPERACIONES CON SETS ๐Ÿ


simbolo nombre
l Uniรณn
& Intersecciรณn
- Diferencia
^ Diferencia simรฉtrica

Union

El resultado de combinar todos los elementos de dos sets

my_set1 = { 3, 4, 5}
my_set2 = { 5, 6, 7}

my_set3 = my_set1 | my_set2
print(my_set3)

# {3, 4, 5, 6, 7}

se usa el operador | para combinar sets


intersecciรณn

Combinar ambos sets y quedarme solo con los que tienen elementos en comรบn

my_set1 = { 3, 4, 5}
my_set2 = { 5, 6, 7}

my_set3 = my_set1 & my_set2
print(my_set3)
#{5}

se usa el & para que se intercepten


Diferencia

La diferencia es el resultado de tomar 2 sets y de uno quitar los elementos que tiene el otro. usamos el operador -

my_set1 = { 3, 4, 5}
my_set2 = { 5, 6, 7}

my_set3 = my_set1 - my_set2
my_set4 = my_set2 - my_set1
print(my_set4)

# {3,4}
# {6,7}

Diferencia simรฉtrica

Lo contrario de la intercepciรณn. Me quedo con los elementos que
no se comparten entre los dos sets. se usa el operador ^

my_set1 = { 3, 4, 5}
my_set2 = { 5, 6, 7}

my_set3 = my_set1 ^ my_set2
print(my_set3)

#{3,4,6,7}

^ = Acento circunflejo
El nombre con el que se conoce este signo.

En realidad, en Python existen dos clases para representar conjuntos: set y frozenset. La principal diferencia es que set es mutable, por lo que despuรฉs de ser creado, se pueden aรฑadir y/o eliminar elementos del conjunto, como veremos en secciones posteriores. Por su parte, frozenset es inmutable y su contenido no puede ser modificado una vez que ha sido inicializado.

otra utilidad de los sets se ve en operaciones espaciales en los sistemas de informaciรณn geogrรกfica. Basados en la posiciรณn de los elementos en el espacio se pueden calcular uniones, intersacciones, diferencias simetricas que permiten realizar analisis muy interesantes.

Operaciones con sets

Podemos operaro con set:

  • Uniรณn: La uniรณn de dos conjuntos es el resultado de combinar todos los elementos, sin repetir๐Ÿ‘€. Para hacer esto, usamos el pipe operator my_set3 = my_set1 | my_set2.
  • Intersecciรณn: Nos quedamos solamente con los elementos que ambos sets tienen en comรบn. Para hacer esto, hacemos my_set3 = my_set1 & my_set2. ๐Ÿคฏ
  • Diferencia: Tomar dos set, y de uno quitar todos los elementos que contiene el otro. Para hacer esto, hacemos my_set3 = my_set1 - my_set2. Es importante notar que my_set1 - my_set2 != my_set2 - my_set1.
  • Diferencia simรฉtrica: Es lo contrario a la intersecciรณn. Nos quedamos con los elementos que no se comparten, esto es hace cรณmo my_set3 = my_set1 ^ my_set2.

Tambiรฉn podemos usar los mรฉtodos para que sea mรกs explicito, que son:

set1.union(set2)
set1.symmetric_difference(set2)
set1.difference(set2)
set1.intersection(set2)

Ejemplo con sets:

def main():
    set1 = {1, 2, 3.5, True, "Juan", "Marรญa"}
    set2 = {0, 2, 3.1, False, "Juan", "Missael"}

    print(f"set1 = {set1}")
    print(f"set2 = {set2}")

    # union
    print(f"set1 + set2 = {set1 | set2}")

    # difference
    print(f"set2 - set1 = {set2 - set1}")
    print(f"set1 - set2 = {set1.difference(set2)}")

    # symmetric difference
    print(f"set1 ^ set2 = {set1 ^ set2}")

    # intersection
    print(f"set1 & set2 = {set1 & set2}")

if __name__=='__main__':
    main()

El output:

set1 = {1, 2, 3.5, 'Marรญa', 'Juan'}
set2 = {0, 2, 3.1, 'Missael', 'Juan'}
set1 + set2 = {0, 1, 2, 3.5, 3.1, 'Missael', 'Marรญa', 'Juan'}
set2 - set1 = {0, 'Missael', 3.1}
set1 - set2 = {1, 'Marรญa', 3.5}
set1 ^ set2 = {0, 1, 3.1, 'Missael', 3.5, 'Marรญa'}
set1 & set2 = {2, 'Juan'}

alguien se acuerda de esta serie: fue muy buena hasta la 6 temporada u.u

casa_stark = {"Jon", "Ned", "Bran", "Arya", "Sansa"}
casa_targaryen = {"Jon", "Daenerys", "Viserys", "Raegar"}

#union
my_set3 = casa_stark | casa_targaryen
print(my_set3)

#interseccion
my_set4 = casa_stark & casa_targaryen
print(my_set4)

#diferencia
my_set5 = casa_stark - casa_targaryen
print(my_set5)

my_set5 = casa_targaryen - casa_stark
print(my_set5)

#diferencia simetrica
my_set6 = casa_stark ^ casa_targaryen
print(my_set6)

Les dejo mi ejemplo para el reto de esta clase:

def run():
    data_engineer_tools = {'Python', 'SQL', 'PostgreSQL', 'MongoDB', 'Apache Spark', 'Apache Kafka', 'Amazon Redshift', 'Snowflake', 'Amazon Athena', 'Apache Airflow'}

    data_analyst_tools = {'R', 'Python', 'Microsoft Excel', 'Tableau', 'RapidMiner', 'KNIME', 'Power BI', 'Apache Spark', 'QlikView', 'Taled'}

    #Union
    union_set = data_engineer_tools | data_analyst_tools
    print(union_set)
    
    #Intersection
    intersection_set = data_engineer_tools & data_analyst_tools
    print(intersection_set)

    #Difference
    difference_set = data_engineer_tools - data_analyst_tools
    print(difference_set)

    #symmetric difference
    sym_diff_set = data_engineer_tools ^ data_analyst_tools
    print(sym_diff_set)


if __name__ == '__main__':
    run()

Dejo mi aporte.

    my_set1 = {1, 2, 3, 4}
    my_set2 = {3,4,5,6}
    my_set3 = my_set1 | my_set2 ##Union, me uno todos los elementos, y los duplicados no los agrego
    print(f"union = {my_set3}")
    my_set4 = my_set1 & my_set2 ##Interseccion, me tomo los elementos que esten en ambos sets
    print(f"interseccion = {my_set4}")
    my_set5 = my_set1 - my_set2 ##Diferencia, me tomo los elementos que esten en el set1 pero no en set2
    print(f"diferencia = {my_set5}")
    my_set6 = my_set1 ^ my_set2 ##Diferencia simetrica, me tomo los elementos que esten en el set1 o en set2, pero no en ambos
    print(f"diferencia simetrica = {my_set6}")

Genero una lista aleatoria de numeros que luego los convierto a un set y realizo las operaciones vistas en clase.


import random 

def show(name_operation,operation):
  print(f'\n{name_operation}: ')
  print(f'\t {operation} ')


def run():
  my_list1 = [random.randint(1,10) for _ in range(0,10)]
  my_list2 = [random.randint(1,10) for _ in range(0,10)]
  set_1= set(my_list1)
  set_2= set(my_list2)
  
  print(f'\n\tList 1: {my_list1}')
  print(f'\tList 2: {my_list2}')
  print(f'\n\tset 1: {set_1}')
  print(f'\tset 2: {set_2}')

  show('Union',set_1 | set_2)
  show('Intersection',set_1 & set_2)
  show('Difference',set_1 - set_2)
  show('Symmetric difference',set_1 ^ set_2)

if __name__ == '__main__':
  run()

Union Operator |
Intersection Operator &
Difference Operator -
Symmetric Difference Operator ^

set1 = {"David","Enrique","Johanna","Andrea","Felipe","Juan"}
print("set1: ",set1)
set2 = {'Enrique',"Andrea","Juan", "Carlos", "Pedro"}
print("set2: ",set2)

set3 = set1 | set2
print("Union: ",set3)

set4 = set1 & set2
print("Intersection: ",set4)


set5 = set1 - set2
print("difference: ",set5)

set6 = set2 - set1
print("difference: ",set6)

set7 = set1 ^ set2
print("symetric difference: ",set7)



Reto completado ๐Ÿ˜ƒ

Desafio :

set1 = {1, 2, 3}
set2 = {3, 4, 5}

set = set1 | set2
print(set)

set3 = set1 & set2
print(set3)

set4 = set1 - set2
print(set4)

set5 = set1 ^ set2
print(set5)

Aquรญ mi soluciรณn al reto:

Dejo un pequeรฑo programa para ver la intersecciรณn, uniรณn, diferencia y diferencia simรฉtrica de tres sets, uno set con los nรบmero pares del 0 al 10, otra con el mismo rango pero ahora los impares y una รบltima con todos los nรบmeros en el mismo rango. Ojalรก a alguien le sirva ๐Ÿ˜„

set_one = set(x for x in range(0,11) if x%2== 0)
set_two = set(x for x in range(0,11) if x%2!= 0)
set_three = set(x for x in range(0,11))
list_sets = [set_one,set_two,set_three]
for i in list_sets:
    k = 0
    while k <=2:
        print(f'''Intesseccion de {i} con {list_sets[k]} es: {i.intersection(list_sets[k])}
Union de {i} con {list_sets[k]} es: {i.union(list_sets[k])}
Diferencia de {i} con {list_sets[k]} es: {i.difference(list_sets[k])}
Diferencia simetrica de {i} con {list_sets[k]} es: {i.symmetric_difference(list_sets[k])}\n''')
        k+=1

Reto

def run():
    set1 = {1, 3, 5, "Hello"}
    set2 = {1, 2, 8, "Hello", "World"}
    union_set = set1 | set2
    inter_set = set1 & set2
    dif_set = set2 - set1
    dif_set2 = set1 - set2
    sym_dif_set = set1 ^ set2

    print("Union set: ", union_set)
    print("Intersection set: ", inter_set)
    print("Difference set 1: ", dif_set)
    print("Difference set 2: ", dif_set2)
    print("symetric Difference set: ", sym_dif_set)

if __name__ == '__main__':
    run()

Teoria de conjuntos

Este es mi aporte al reto de la clase:

def union_operation():
    my_set1 = {'Mario', 31, 3, False}
    my_set2 = {'Karen', 39, 1, False}

    my_result_set = my_set1 | my_set2
    print('Union operation:')
    print(my_result_set)

def intersect_operation():
    my_set1 = {'Mario', 31, 3, False}
    my_set2 = {'Karen', 39, 1, False}

    my_result_set = my_set1 & my_set2
    print('Intersect operation:')
    print(my_result_set)

def difference_operation():
    my_set1 = {'Mario', 31, 3, False}
    my_set2 = {'Karen', 39, 1, False}

    my_result_set = my_set1 - my_set2
    my_result_set2 = my_set2 - my_set1
    print('Difference operation:')
    print(my_result_set)
    print(my_result_set2)

def sym_difference_operation():
    my_set1 = {'Mario', 31, 3, False}
    my_set2 = {'Karen', 39, 1, False}

    my_result_set = my_set1 ^ my_set2
    print('Assymetric difference operation:')
    print(my_result_set)

if __name__ == '__main__':
    union_operation()
    intersect_operation()
    difference_operation()
    sym_difference_operation()

Los conjuntos que creรฉ y las operaciones que hice:

def union(set1, set2):
    set3 = set1 | set2
    print(set3)

def interseccion(set1, set2):
    set3 = set1 & set2
    print(set3)

def diferencia(set1, set2):
    set3 = set1 - set2
    print(set3)

def diferencia_simetrica(set1, set2):
    set3 = set1 ^ set2
    print(set3)






if __name__ == '__main__':
    set1 = {1, 2, 3}
    set2 = {3, 4, 5}

    union(set1, set2)
    interseccion(set1, set2)
    diferencia(set1, set2)
    diferencia_simetrica(set1, set2)


Yo lo hice con champs de LoL.

support_champs = {"Karma", "Nami", "Rakan", "Soraka", "Nautilus","Senna"}

adc_champs = {"Vayne", "Varus", "Ashe", "Kalista", "Senna"}

top_laners = {"Sett", "Cho'gath","Pantheon", "Kled", "Nautilus"}

ap_champs = {"Karma","Syndra", "Ahri", "Veigar"}

assassin_champs = {"Talon", "Zed", "Qiyana"}

jg_champs = {"Lee Sin", "Jarvan IV", "Warwick", "Viego"}

sup_and_adc = support_champs & adc_champs
print(sup_and_adc)

bot_lane = support_champs | adc_champs
print(bot_lane)

mid_lane = ap_champs | assassin_champs
print(mid_lane)

only_sups = support_champs - ap_champs
print(only_sups)

only_top_troll = ap_champs ^ support_champs
print(only_top_troll)

Hice uno con los jugadores del Real Madrid y la selecciรณn de Espaรฑa

spain = {"Ramos", "Xavi", "Iniesta", "Carvajal", "Casilla"}
madrid = {"Ronaldo", "Ramos", "Casilla", "Benzema", "Carvajal"} 

my_set1 = spain | madrid
print(my_set1)

my_set2 = spain & madrid
print(my_set2)

my_set3 = spain - madrid
print(my_set3)

my_set4 = madrid - spain
print(my_set4)

my_set5 = madrid ^ spain
print(my_set5)

GOTY
(Game of the year)
Hola compaรฑeros, yo hice una funcion que en base a los 10 ultimos GOTYS escogidos por Eurogamer e IGN, nos muestra su union, interseccion y diferencia.

def goty():
    #Los ultimos 10 GOTYS (Hasta 2020) segun:
    eurogamer = {
        "Portal 2", "Fez", "Super Mario 3D World",
        "Bloodborne", "Overwatch", "The Legend of Zelda: Breath of the Wild",
        "Tetris Effect", "Outer Wilds", "Hades"
    }
    ign = {
        "Portal 2", "Journey", "The Last of Us", "Dragon Age: Inquisition",
        "The Witcher 3: Wild Hunt", "Overwatch", "The Legend of Zelda: Breath of the Wild",
        "God of War", "Control", "Hades"
    }

    print("En total, todos los GOTYS en los ultimos 10 aรฑos de ambas revistas fueron:")
    for game in eurogamer.union(ign):
        print(f"{game}")
    print("\nEurogamer e IGN escogieron los siguientes juegos como GOTY:")
    for game in eurogamer.intersection(ign):
        print(f"{game}")
    print("\nEurogamer escogio estos juegos como GOTY, pero IGN no:")
    for game in eurogamer.difference(ign):
        print(f"{game}")
    print("\nIGN escogio estos juegos como GOTY, pero Eurogamer no: ")
    for game in ign.difference(eurogamer):
        print(f"{game}")
    

Cree dos conjuntos: 1- Jugadores sudamericanos, 2- Jugadores del barcelona.

Vemos que al ejecutar nos muestra:
Union: todos los jugadores.
Intersecciรณn: jugadores sudamericanos y que jugaron en el barca.
Diferencia: jugadores sudamericanos que no jugaron en el barca.
Diferencia simetrica: jugadores que no son sudamericanos รณ que no jugaron en el barca

Por si se perdieron en los apuntes chicos, aqui les dejo el solucionario:

<
# Sets o 'conjuntos'
# Son una coleccion desordenada; de elementos unicos e inmutables 


# Sets actuales
set_1 = {1,2,3,4,5}
set_2 = {5,6,7,8,9}

# Combinacion de sets 
combinacion = set_1 | set_2

print(f'La suma de sets es con |(py), y el resultado es: {combinacion}')


# Interseccion; el resultado de combinar ambos sets, pero solo nos quedamos 
# con los elementos en comun. 
interseccion = set_1 & set_2

print(f'Esto es la combinacion: {interseccion}')


# Diferencia; el resultado de tomar dos sets, y remover todo lo que contenga
# el segundo set, se arrojan todos los datos del primer set sin los repetidos 
# con el segundo.
diferencia_conset1 = set_1 - set_2
diferencia_conset2 = set_2 - set_1

print(f'Esta es la diferencia con set 1: {diferencia_conset1}')
print(f'Esta es la diferencia con set 2: {diferencia_conset2}')


# Diferencia simetrica; es lo contrario de la interseccion, excepto lo que se
# comparte. 
diferencia_simetrica = set_1 ^ set_2 

print(f'Este es la diferencia simetrica: {diferencia_simetrica}')


# Respuestas: 
# La suma de sets es con |(py), y el resultado es: {1, 2, 3, 4, 5, 6, 7, 8, 9}
# Esto es la combinacion: {5}
# Esta es la diferencia con set 1: {1, 2, 3, 4}
# Esta es la diferencia con set 2: {8, 9, 6, 7}
# Este es la diferencia simetrica: {1, 2, 3, 4, 6, 7, 8, 9}
> 

El cรณdigo

def union(set_one, set_two):
    return set_one | set_two 


def interseccion(set_one, set_two):
    return set_one & set_two


def diferencias(set_one, set_two):
    return set_one - set_two


def diferencia_simetrica(set_one, set_two):
    return set_one ^ set_two


def main():
    set_one = {1,2,3}
    set_two = {4,2,5,6}
    print()
    print("Union:                ", union(set_one, set_two))
    print("Diferencias:          ", diferencias(set_one, set_two))
    print("Diferencia simetrica: ", diferencia_simetrica(set_one, set_two))
    print("Interseccion:         ", interseccion(set_one, set_two))

    
if __name__ == '__main__':
    main()

es mas largo, pero se lee perfectamente.

my_set1={1,2,3,4,5,6,7,8,9}
my_set2={11,12,1,3,5,23,667,9}
print("set1 : ", str(my_set1))
print("")
print("set2 : ", str(my_set2))
#Union

myset3=my_set1 | my_set2
print("union",str(myset3))


myset3=my_set1 & my_set2
print("intercepciรณn",str(myset3))


myset3=my_set1 - my_set2
print("diferencia",str(myset3))


myset3=my_set1 ^ my_set2
print("diferencia simetrica ",str(myset3))
conjuntoA = {1,2,45,85,215,21,154}
conjuntoB = {1,3,52,20,15,45,21,154}

if __name__ == "__main__":
    

    union = conjuntoA | conjuntoB
    intersecion = conjuntoA & conjuntoB
    diferencia = conjuntoA - conjuntoB
    diferencia2 = conjuntoB- conjuntoA
    diferencia_simetrica = conjuntoA ^ conjuntoB
    print(f"""
        union = {union}
        intersecion = {intersecion}
        diferecina = 1) {diferencia} 2) {diferencia2}
        diferencia simetrica = {diferencia_simetrica}
    
    """)

RETO COMPLETADO Agregue un poco de ascii art


import random
import os

def creation_set(min, max, amount):
    my_set = set()
    counter = 0
    while counter < amount:
        my_set.add(random.randint(min, max))
        counter += 1
    return my_set
    


def run():
    
    creation = True
    while creation:

        try:
            a = int(input("\tType the minimum of the range: "))
            b = int(input("\tType the maximum of the range: "))
            c = int(input("Type the number of objects in the set: "))
        except TypeError:
            print("You can only use numbers")

        my_set = creation_set(a, b, c)
        my_set2 = creation_set(a, b, c)
        {os.system("clear")}
        print(f"My first set is: {my_set} \nMy second set is: {my_set2}")

        try:
            option = int(input("\nWhat do you want to do?\n\t1.- Union\n\t2.- Intersection\n\t3.- Difference\n\t4.- Symmetric difference\n\t5.- All of the above\nType the option number: "))
        except TypeError:
            print("You can only use numbers")
            
        {os.system("clear")}
        print(f"My first set is: {my_set} \nMy second set is: {my_set2}")

        union_set = my_set | my_set2    
        intersection_set = my_set & my_set2
        difference_set = my_set - my_set2
        symmDifference_set = my_set ^ my_set2

        if option == 1:
            print("\tYou chose 'Union'")
            print(f"The union between set1 and set2, \n\tis equal to: {union_set}")                        

        elif option == 2:
            print("\tYou chose 'Intersection'")
            print(f"The intersection between set1 and set2, \n\tis equal to: {intersection_set}")

        elif option == 3:
            print("\tYou chose 'Difference'")
            print(f"The difference between set1 and set2, \n\tis equal to: {difference_set}")

        elif option == 4:
            print("\tYou chose 'Symmetric difference'")
            print(f"The symmetric difference between set1 and set2, \n\tis equal to: {symmDifference_set}")            
            
        elif option == 5:
            print("\tYou chose 'All of the above'")
            print(f"""
        Union between set1 and set2 is equal to: {union_set}
        Intersection between set1 and set2 is equal to: {intersection_set}
        Difference between set1 and set2 is equal to: {difference_set}
        Symmetric difference between set1 and set2 is equal to: {symmDifference_set}
            """)

        else: 
            print("\n\tValue out of range")
        
        execute_p = input("Do you want to exit the program?(Y/n): ").lower()
        if execute_p == "y":
            {os.system("clear")}
            print(
            """                                                                      
                            โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ                                                                                      
                        โ–ˆโ–ˆโ–ˆโ–ˆ                  โ–ˆโ–ˆโ–ˆโ–ˆ                                                                                  
                      โ–ˆโ–ˆ                          โ–ˆโ–ˆ                                                                                
                      โ–ˆโ–ˆ                          โ–ˆโ–ˆ                                                                                
                    โ–ˆโ–ˆโ–‘โ–‘                          โ–‘โ–‘โ–“โ–“                                                                              
                โ–‘โ–‘  โ–ˆโ–ˆ  โ–‘โ–‘โ–‘โ–‘                        โ–ˆโ–ˆ                                                                              
                โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘          โ–“โ–“โ–“โ–“โ–“โ–“    โ–ˆโ–ˆ                                                                              
              โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘        โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆ                                                                              
                  โ–‘โ–‘โ–ˆโ–ˆโ–‘โ–‘  โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    โ–ˆโ–ˆ    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆ                                                                              
                    โ–‘โ–‘โ–“โ–“  โ–‘โ–‘      โ–“โ–“โ–ˆโ–ˆโ–ˆโ–ˆ          โ–“โ–“                                                                                
                    โ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆ                  โ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆ        โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ                      โ–ˆโ–ˆ  โ–ˆโ–ˆ                                  
                    โ–ˆโ–ˆ    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆ        โ–ˆโ–ˆ                            โ–ˆโ–ˆ  โ–ˆโ–ˆ                                  
                    โ–ˆโ–ˆ      โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ      โ–ˆโ–ˆ        โ–ˆโ–ˆ  โ–“โ–“โ–“โ–“  โ–“โ–“โ–“โ–“โ–“โ–“  โ–ˆโ–ˆโ–“โ–“โ–“โ–“  โ–“โ–“โ–“โ–“โ–ˆโ–ˆ  โ–ˆโ–ˆโ–“โ–“โ–“โ–“  โ–“โ–“  โ–ˆโ–ˆ  โ–“โ–“โ–“โ–“โ–“โ–“              
                    โ–’โ–’โ–ˆโ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆโ–ˆโ–ˆโ–’โ–’        โ–ˆโ–ˆ    โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ              
                  โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–ˆโ–ˆโ–ˆโ–ˆ      โ–“โ–“  โ–“โ–“  โ–ˆโ–ˆโ–ˆโ–ˆโ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’      โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ              
                โ–‘โ–‘โ–’โ–’โ–ˆโ–ˆโ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–ˆโ–ˆโ–’โ–’                                                    โ–ˆโ–ˆ  โ–ˆโ–ˆ                  
                  โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆ      โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆ  โ–ˆโ–ˆ  โ–ˆโ–ˆ
                โ–‘โ–‘โ–‘โ–‘  โ–ˆโ–ˆ  โ–“โ–“โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–’โ–’โ–’โ–’โ–’โ–’โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆ  โ–ˆโ–ˆโ–“โ–“                                                                          
                โ–ˆโ–ˆ      โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“    โ–ˆโ–ˆ    โ–ˆโ–ˆ    โ–ˆโ–ˆ      โ–ˆโ–ˆโ–‘โ–‘                                                                        
              โ–ˆโ–ˆ    โ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“      โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆ  โ–‘โ–‘โ–‘โ–‘                                                                        
              โ–ˆโ–ˆ        โ–ˆโ–ˆ    โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“  โ–ˆโ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆ        โ–‘โ–‘โ–‘โ–‘                                                                      
              โ–ˆโ–ˆ          โ–ˆโ–ˆ  โ–ˆโ–ˆ    โ–“โ–“โ–“โ–“  โ–ˆโ–ˆ  โ–ˆโ–ˆ          โ–ˆโ–ˆ                                                                        
                โ–ˆโ–ˆ      โ–ˆโ–ˆ    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“  โ–ˆโ–ˆ      โ–ˆโ–ˆ                                                                          
                  โ–“โ–“โ–“โ–“  โ–ˆโ–ˆ    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–“โ–“    โ–ˆโ–ˆ  โ–“โ–“โ–“โ–“                                                                            
                    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ                                                                              
                    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ                                                                              
                  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ                                                                            
                  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ                                                                            
                    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ      โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ                                                                              
                โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ          โ–ˆโ–ˆ      โ–ˆโ–ˆ          โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ                                                                          
                โ–ˆโ–ˆ            โ–ˆโ–ˆโ–ˆโ–ˆ      โ–ˆโ–ˆโ–ˆโ–ˆ            โ–ˆโ–ˆ                                                                          
                  โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“              โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“                                                                            

            """)
            creation = False
        elif execute_p == "n":
            {os.system("clear")}
            continue
        else:
            print("Value out of range, rebooting...")
            {os.system("clear")}
            
        


if __name__ == '__main__':
    {os.system("clear")}
    print("""
                                                    โ–“โ–“โ–“โ–“  โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“                                          
                                            โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’                                        
                                    โ–’โ–’โ–’โ–’โ–“โ–“โ–’โ–’โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“                                        
                              โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“                                        
                          โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“                                        
                      โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘                                      
                    โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘                                    
                  โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“                                  
              โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“                                
            โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘                            
          โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“  โ–‘โ–‘โ–‘โ–‘                            
        โ–’โ–’โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘                          
        โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘          โ–‘โ–‘โ–‘โ–‘                        
    โ–’โ–’โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“  โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘                      
  โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“  โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘                    
โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“    โ–‘โ–‘                    
โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘                
โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘              
โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘              
โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘            
โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘          
  โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–’โ–’โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘        
    โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘In this program, we create a set with range of numbersโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘    
        โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘      
            โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘      
                โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    
                  โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–‘โ–‘โ–‘โ–‘  โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–ˆโ–ˆโ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    
                          โ–’โ–’โ–’โ–’โ–’โ–’โ–‘โ–‘โ–‘โ–‘  โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    
                                โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–’โ–’โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  
                                โ–’โ–’โ–‘โ–‘    โ–’โ–’โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  
                                  โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  โ–’โ–’โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  
                                  โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘  
                                    โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  โ–’โ–’โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘โ–‘โ–‘โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘  
                                      โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘  โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘โ–‘โ–‘โ–“โ–“โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  
                                        โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘โ–’โ–’        โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–’โ–“โ–“โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘  
                                          โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–’โ–’      โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘              โ–’โ–’โ–’โ–’โ–’โ–’โ–‘โ–‘โ–‘โ–‘  โ–’โ–’โ–“โ–“โ–’โ–’โ–‘โ–‘  โ–‘โ–‘  
                                            โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘              โ–‘โ–‘    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–’โ–’โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘  
                                            โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–’โ–’        โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘                    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–’โ–’โ–’โ–’โ–‘โ–‘  โ–‘โ–‘  
                                              โ–’โ–’โ–‘โ–‘โ–‘โ–‘        โ–‘โ–‘โ–‘โ–‘  โ–’โ–’                        โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–’โ–’โ–’โ–’โ–‘โ–‘  โ–‘โ–‘  
                                              โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘        โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘                        โ–‘โ–‘โ–‘โ–‘โ–’โ–’โ–’โ–’โ–’โ–’โ–‘โ–‘  โ–‘โ–‘  
                                                โ–‘โ–‘โ–‘โ–‘        โ–‘โ–‘โ–‘โ–‘                            โ–’โ–’  โ–‘โ–‘    โ–‘โ–‘  โ–‘โ–‘  
                                                โ–‘โ–‘โ–‘โ–‘        โ–‘โ–‘โ–‘โ–‘                            โ–‘โ–‘  โ–‘โ–‘    โ–‘โ–‘  โ–‘โ–‘  
                                                โ–‘โ–‘          โ–’โ–’โ–‘โ–‘                            โ–‘โ–‘  โ–‘โ–‘    โ–’โ–’โ–‘โ–‘โ–‘โ–‘  
                                                โ–‘โ–‘            โ–‘โ–‘                            โ–‘โ–‘  โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘  
                                                              โ–‘โ–‘                            โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘  
                                                              โ–‘โ–‘                              โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘  
                                                              โ–‘โ–‘                              โ–‘โ–‘โ–‘โ–‘      โ–‘โ–‘โ–‘โ–‘  
                                                              โ–‘โ–‘                                        โ–‘โ–‘โ–‘โ–‘  
                                                              โ–‘โ–‘                                        โ–‘โ–‘โ–‘โ–‘  
                                                            โ–‘โ–‘  โ–‘โ–‘                                    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘
                                                            โ–‘โ–‘โ–‘โ–‘                                      โ–‘โ–‘      
                                                              โ–‘โ–‘                                    โ–‘โ–‘โ–‘โ–‘      
                                                                                                    โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  โ–‘โ–‘
                                                                                                      โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  

    """)
    run()
def list_to_sets(set1:list, set2:list) -> set:
    return set(set1), set(set2)


def union(set1:list, set2:list) -> set:
    set1, set2 = list_to_sets(set1, set2)
    return set1 | set2

def interseccion(set1: list, set2:list) -> set:
    set1, set2 = list_to_sets(set1, set2)
    return set1 & set2

def diferencia(set1: list, set2:list) -> set:
    set1, set2 = list_to_sets(set1, set2)
    return set1 - set2

def diferencia_simetrica(set1: list, set2:list) -> set:
    set1, set2 = list_to_sets(set1, set2)
    return set1 ^ set2

if __name__ == '__main__':
    set1 = [i for i in range(0, 26)]
    set2 = [i for i in range(18, 50)]

    print('Union: ', union(set1, set2))
    print('Interseccion: ', interseccion(set1, set2))
    print('Diferencia: ', diferencia(set1, set2))
    print('Diferencia simetrica: ', diferencia_simetrica(set1, set2))

Mi aporte, por si se les complica encontrar el sรญmbolo ^ se coloca con Alt + 94

my_set1 = {0,1,2,3,5,10,15}
my_set2 = {10,20,15,3,50,95}

#Uniรณn
my_set3 = my_set1 | my_set2
print(f"Uniรณn {my_set3}")

#Intersecciรณn
my_set3 = my_set1 & my_set2
print(f"Intersecciรณn {my_set3}")

#Diferencia
my_set3 = my_set1 - my_set2
print(f"Diferencia {my_set3}")

#Diferencia simรฉtrica
my_set3 = my_set1 ^ my_set2
print(f"Diferencia simรฉtrica {my_set3}")

**Lo que obtuve: **

>>> b
{3, 'elpepe', False, 423, True, 234, 'Fiio', 432, 23, 312, 123, 1212}
>>> a = {1,2,3,4,5}
>>> b = {3,4,5,6,7}
>>> a & b
{3, 4, 5}
>>> a - b
{1, 2}
>>> b - a
{6, 7}
>>> b.discard(b - a)
>>> b
{3, 4, 5, 6, 7}
>>> a - b
{1, 2}
>>> a ^ b
{1, 2, 6, 7}

Este es el codigo que hice, Agrege decoradores para mostrar el par de sets originales

import typing

def decorator(func):
    def wrapper(*args, **kwargs):
        print(f'The original sets are , {args[0]} and {args[1]}')
        func(*args, **kwargs)
    return wrapper

@decorator
def sym_dif(set1: set, set2: set) -> set:
    set_result =  set1.symmetric_difference(set2)
    print('symetric Diference ', set_result)

@decorator
def diference(set1: set, set2: set) -> set:
    set_result = set1.difference(set2)
    print('Diference ', set_result)

@decorator
def intersec(set1: set, set2:set) -> set:
    set_result =  set1.intersection(set2)
    print('Intersection ' , set_result)

@decorator
def join(set1: set, set2:set) -> set:
    set_result =  set1.union(set2)
    print('join ', set_result)

def run():
    set1 = {1,2,3,'R',(2,5)}
    set2 = {1,5,9,7,'C',(9,2)}

    symmetric_difference = sym_dif(set1, set2)
    dif = diference(set1, set2)
    intersection = intersec(set1, set2)
    join_operator = join(set1, set2)

    symmetric_difference
    dif
    intersection
    join_operator

if __name__ == '__main__':
    run()

Mi aporte.

SET1 = {1, 3, 4, (1, 2, 3), True, "hello"}
SET2 = {1, 2, 3, (10, "Helloo"), False, "Helloo", (1, 2, 3)}

def union():
	"""Function union set"""
	print("")
	print(f'Union= {SET1 | SET2}')
	print(f'Explรญcita= {SET1.union(SET2)}')


def intersection():
	"""Function interseccion set"""
	print("")
	print(f'Interseccion= {SET1 & SET2}')
	print(f'Explรญcita= {SET1.intersection(SET2)}')


def difference12():
	"""Function difference set Diffents of A in B"""
	print("")
	print(f'Difference A - B= {SET1 - SET2}')
	print(f'Explรญcita= {SET1.difference(SET2)}')


def difference21():
	"""Function difference set (Diffents of B in A)"""
	print("")
	print(f'Difference B - A= {SET2 - SET1}')
	print(f'Explรญcita= {SET2.difference(SET1)}')


def difference_symmetric():
	"""Function difference simetric set (No comรบn entre ambos)"""
	print("")
	print(f'Difference asimetric= {SET1 ^ SET2}')
	print(f'Explรญcita= {SET1.symmetric_difference(SET2)}')


def run():
	"""Function run start"""
	print(f'SET 1 = {SET1}')
	print(f'SET 2 = {SET2}')
	union()
	intersection()
	difference12()
	difference21()
	difference_symmetric()


if __name__ == '__main__':
	run()

class ConjuSect():

	def __init__(self):

		self.my_sect1={1,2,3,4,5,True,3.5,"Hola",9,10}

		self.my_sect2={2,3,4,False,3.5,3.6,"Mundo",True,11,34,232}

		

	def union(self):

		return self.my_sect1 | self.my_sect1

	def intersecion(self):

		return self.my_sect1 & self.my_sect2

	def diferencia(self):

		return self.my_sect1 - self.my_sect2

	def dife_simetrica(self):
		return self.my_sect1 ^ self.my_sect2
def run():

	my_sect=ConjuSect()
	print(my_sect.union())
	print(my_sect.intersecion())
	print(my_sect.diferencia())
	print(my_sect.dife_simetrica())


if __name__ == '__main__':
	run()
p1 = {'Juan', 'Pedro', 'Miguel', 'Guadalupe', 'Carlos'}
p2 = {'Francisco', 'Pedro', 'Guillermo', 'Jorge', 'Ernesto'}

print(p1)
print(p2)
print('*******Union*******')
p3 = p1 | p2
print(p3)
print('*******Intersection*******')
p3 = p1 & p2
print(p3)
print('*******Difference*******')
p3 = p1 - p2
print(p3)
print('*******Symmetric Difference*******')
p3 = p1 ^ p2
print(p3)

he aquรญ mi cรณdigo en donde utilizo los operadores con set

almacenado = {'lechuga','espinaca','col',
            'brocoli','tomate','jitomate',
            'aguacate','berenjena','elote',
            'sandia','fresa','guayaba',
            'cebolla','coliflor','leche',
            'huevo','refresco','res',
            'pollo','camaron','avena',
            'arroz','trigo','agua',
            'salchicha','jamon','catsup','cerdo'}
legumbres  ={'lenteja','frijol','habas',
            'garbanzo','guisantes','ejotes'}
frutas     = {'tomate','jitomate','aguacate',
            'sandia','guayaba',
            'berenjena','fresa'}
carne      ={'pollo','res','cerdo','huevo','jamon','salchicha','camaron'}
otros      ={'refresco','miel','catsup','leche','agua'}
semillas   ={'arroz','avena','trigo'}

verduras_almacen   = almacenado - frutas - legumbres - carne - semillas - otros
frutas_almacen     = almacenado & frutas
frutas_verduras_almacen = verduras_almacen | frutas_almacen
others = almacenado ^ semillas ^ carne ^ frutas_verduras_almacen

print(f'Las verduras que tienes en almacen son: {verduras_almacen}')
print('\n')
print(f'Las frutas que tienes en almacen son: {frutas_almacen}')
print('\n')
print(f'Las frutas y verduras almacenadas son:{frutas_verduras_almacen}')
print('\n')
print(f'Los alimentos no clasificados son: {others}')

Lo que imprime en consola es lo siguiente:

Las verduras que tienes en almacen son: {'cebolla', 'elote', 'brocoli', 'lechuga', 'coliflor', 'espinaca', 'col'}


Las frutas que tienes en almacen son: {'jitomate', 'guayaba', 'sandia', 'tomate', 'aguacate', 'berenjena', 'fresa'}


Las frutas y verduras almacenadas son:{'jitomate', 'guayaba', 'sandia', 'tomate', 'berenjena', 'cebolla', 'aguacate', 'fresa', 'elote', 'brocoli', 'lechuga', 'coliflor', 'espinaca', 'col'}


Los alimentos no clasificados son: {'agua', 'leche', 'refresco', 'catsup'}

Reto:

my_set1 = {1, 2, 3, 4, 5, 6}
my_set2 = {3, 4, 5, 6, 7, 8}

print(f'Este es my_set1 {my_set1}')
print(f'Este es my_set2 {my_set2}')

my_set3 = my_set1 | my_set2
print('Ejemplo de uniรณn')
print(my_set3)

my_set3 = my_set1 & my_set2
print('Ejemplo de intesecciรณn')
print(my_set3)

my_set3 = my_set1 - my_set2
print('Ejemplo de diferencia 1 - 2')
print(my_set3)
my_set4 = my_set2 - my_set1
print('Ejemplo de diferencia 2 - 1')
print(my_set4)

my_set3 = my_set1 ^ my_set2
print('Ejemplo de diferencia simetrica')
print(my_set3)

Reto de la clase:

frutas1 = {โ€˜Naranjaโ€™, โ€˜Peraโ€™, โ€˜Platanoโ€™,โ€˜Sandiaโ€™}
frutas2 = {โ€˜Uvaโ€™,โ€˜Manzanaโ€™,โ€˜Fresaโ€™,โ€˜Sandiaโ€™,โ€˜Cerezaโ€™}

frutas3 = frutas1 | frutas2
print(fโ€™Resultado de set Uniรณn: {frutas3}โ€™)
#Resultado de set Uniรณn: {โ€˜Uvaโ€™, โ€˜Fresaโ€™, โ€˜Manzanaโ€™, โ€˜Peraโ€™, โ€˜Sandiaโ€™, โ€˜Platanoโ€™, โ€˜Cerezaโ€™, โ€˜Naranjaโ€™}

frutas3 = frutas2 | frutas1
print(fโ€™Resultado de set Uniรณn: {frutas3}โ€™)
#Resultado de set Uniรณn: {โ€˜Uvaโ€™, โ€˜Fresaโ€™, โ€˜Manzanaโ€™, โ€˜Peraโ€™, โ€˜Sandiaโ€™, โ€˜Platanoโ€™, โ€˜Cerezaโ€™, โ€˜Naranjaโ€™}

frutas3 = frutas1 & frutas2
print(fโ€™Resultado de set Interseccion: {frutas3}โ€™)
#Resultado de set Interseccion: {โ€˜Sandiaโ€™}

frutas3 = frutas2 & frutas1
print(fโ€™Resultado de set Interseccion: {frutas3}โ€™)
#Resultado de set Interseccion: {โ€˜Sandiaโ€™}

frutas3 = frutas1 - frutas2
print(fโ€™Resultado de set Diferencia: {frutas3}โ€™)
#Resultado de set Diferencia: {โ€˜Peraโ€™, โ€˜Platanoโ€™, โ€˜Naranjaโ€™}

frutas3 = frutas2 - frutas1
print(fโ€™Resultado de set Diferencia: {frutas3}โ€™)
#Resultado de set Diferencia: {โ€˜Uvaโ€™, โ€˜Cerezaโ€™, โ€˜Fresaโ€™, โ€˜Manzanaโ€™}

frutas3 = frutas1 ^ frutas2
print(fโ€™Resultado de set Diferencia simรฉtrica : {frutas3}โ€™)
#Resultado de set Diferencia simรฉtrica : {โ€˜Fresaโ€™, โ€˜Uvaโ€™, โ€˜Platanoโ€™, โ€˜Peraโ€™, โ€˜Manzanaโ€™, โ€˜Naranjaโ€™, โ€˜Cerezaโ€™}

frutas3 = frutas2 ^ frutas1
print(fโ€™Resultado de set Diferencia simรฉtrica : {frutas3}โ€™)
#Resultado de set Diferencia simรฉtrica : {โ€˜Fresaโ€™, โ€˜Platanoโ€™, โ€˜Manzanaโ€™, โ€˜Naranjaโ€™, โ€˜Uvaโ€™, โ€˜Peraโ€™, โ€˜Cerezaโ€™}

Mi resultado del reto:

def union_sets(set1:set, set2:set):
    return set1 | set2

def intersection_sets(set1:set, set2:set):
    return set1 & set2

def diference_sets(set1:set, set2:set):
    return set1 - set2

def simetric_diference_sets(set1:set,set2:set):
    return set1 ^ set2

def run():
    my_set_1 = {0,1,2,3,4,5}
    my_set_2 = {4,5,6,7,8,9}
    print(my_set_1)
    print(my_set_2)

    print(union_sets(my_set_1,my_set_2))
    print(intersection_sets(my_set_1,my_set_2))
    print(diference_sets(my_set_1,my_set_2))
    print(simetric_diference_sets(my_set_1,my_set_2))

if __name__ == '__main__':
    run()
my_set1 = {1, 2, 3, 4, 5, 6, 7, 8}
my_set2 = {9, 8, 7, 4, 3, 2}

my_setUnion = my_set1 | my_set2
my_setInter = my_set1 & my_set2
my_setDiff = my_set1 - my_set2
my_setDiffAsi = my_set1 ^ my_set2

print("my_set1 {}".format(my_set1))
print("my_set2 {}".format(my_set2))
print("Union: ", my_setUnion)
print("Interseccion: ", my_setInter)
print("Diferencia: ", my_setDiff)
print("Diferencia Asimetrica: ", my_setDiffAsi)
# Union
students = {"Carlos", "Luis", "Marta", "Rafael"}
class_list = {"Luis"}
total_students = students | class_list
print(total_students)

# Intersection
students = {"Carlos", "Luis", "Marta", "Rafael"}
class_list = {"Luis", "Carlos"}
students_in_class = students & class_list
print(students_in_class)

# Difference
students = {"Carlos", "Luis", "Marta", "Rafael"}
class_list = {"Luis", "Rafael"}
students_without_class = students - class_list
print(students_without_class)

# Symmetric difference
students = {"Carlos", "Luis", "Marta", "Rafael"}
class_list = {"Luis", "Carlos", "Fulanito"}
students_issues = students ^ class_list
print(students_issues)

Mi soluciรณn al reto propuesto:

primos = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29}
impares = {1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29}

union = impares | primos
interseccion = impares & primos
diferencia_1 = impares - primos
diferencia_2 = primos - impares
dif_simetrica = impares ^ primos

print(union)
print(interseccion)
print(diferencia_1)
print(diferencia_2)
print(dif_simetrica)

Mi output fue el siguiente:

Aquรญ mi aporte, con las dos maneras de realizar operaciones con sets: con operadores y mรฉtodos

#Conjunto de Sets
set_1 = {1, 2, 4, 6, 8}
set_2 = {4, 0, 9, 8}

#Uniรณn
set_union = set_1 | set_2
print(set_union)
set_union = set_1.union(set_2)
print(set_union)

#Intersecciรณn
set_intersection = set_1 & set_2
print(set_intersection)
set_intersection = set_1.intersection(set_2)
print(set_intersection)

#Diferencia
set_difference = set_1 - set_2
print(set_difference)
set_difference = set_1.difference(set_2)
print(set_difference)

#Diferencia Simรฉtrica
set_symmetric_difference = set_1 ^ set_2
print(set_symmetric_difference)
set_symmetric_difference = set_1.symmetric_difference(set_2)
print(set_symmetric_difference)

my_set1 = {โ€˜aโ€™ โ€˜bโ€™, โ€˜cโ€™, โ€˜dโ€™, โ€˜eโ€™, โ€˜fโ€™}
my_set2 = {โ€˜dโ€™, โ€˜fโ€™, โ€˜gโ€™, โ€˜hโ€™, โ€˜iโ€™, โ€˜jโ€™, โ€˜kโ€™}

#===== UNION =====
my_set3 = my_set1 | my_set2
print(my_set3)

#===== INTERSECCION =====
my_set4 = my_set1 & my_set2
print(my_set4)

#===== DIFERENCIA =====
my_set5 = my_set1 - my_set2
my_set6 = my_set2 - my_set1
print(my_set5)
print(my_set6)

#===== DIFERENCIA SIMETRICA =====
my_set7 = my_set1 ^ my_set2
print(my_set7)

Mi reto

my_set={1, 2, 14.2, (4, 3, 4), "hola", "Eli"}
my_set2={14.2, (1, 2, 3), "hola", "Eduardo", 4, 2}

print(my_set)
print(my_set2)

#suma/uniรณn de sets
#une ambos sets
my_set3=my_set | my_set2
print(my_set3)

#Intersecciรณn de sets
#obtiene unicamente los elementos que coinciden en ambos sets
my_set3=my_set & my_set2
print(my_set3)

#Diferencia/resta de sets
#Quita del primer conjunto los elementos que se encuentren en el segundo conjunto
my_set3=my_set-my_set2
print(my_set3)
my_set3=my_set2-my_set
print(my_set3)

#Diferencia simรฉtrica
#lo contrario a la intersecciรณn
#Suma ambos sets sin agregar los elementos que coinciden en ambos sets
my_set3=my_set^my_set2
print(my_set3)

my_set_tipo_casco = {โ€œmonocascoโ€, โ€œcatamarรกnโ€, โ€œtrimarรกnโ€}
my_set_tipo_apendicis_sumergido = {
โ€œquilla corridaโ€, โ€œquilla de aletaโ€, โ€œquilla de balanceโ€}
my_set_configuracion_aparejo = {
โ€œSloop a tope paloโ€, โ€œSloop fraccionadoโ€, โ€œquecheโ€, โ€œgoletaโ€}

my_set_barco = my_set_tipo_casco | my_set_tipo_apendicis_sumergido
print(my_set_barco)

my_set_barco2 = my_set_configuracion_aparejo & my_set_barco
print(my_set_barco2)

Mi aporte:

a = set("Este es un ejemplo")
b = set("Ejemplo para uso de sets")

unionset = a | b
interset = a & b
Diffeset = a - b
diffaset = a ^ b

print(unionset)
print(interset)
print(Diffeset)
print(diffaset)

Challenge Complete!

    my_set = {3,4,5,True, False, "Hola Bro", "Hola", 6,10,11}
    my_set2 = {5,6,7, "Hola Bro",10,4,6}
    #suma
    union = my_set | my_set2
    print("uniรณn:", union)
    # Solo los comunes
    intersection = my_set & my_set2
    print("intersection:", intersection)
    #Symmetritic Diferences
    symmetric = my_set - my_set2
    print("Symmetric: ", symmetric)
    #Diferentes
    diference = my_set ^ my_set2
    print("diference:", diference)

๐Ÿ‘พ

Intente agregar cadenas de texto para no solo trabajar con nรบmeros

# Operaciones con Sets

def union(set1, set2):
    set3 = set1 | set2
    print(set3)

def intersection(set1, set2):

    set3 = set1 & set2
    print(set3)

def difference(set1, set2):    
    set3 = set1 - set2
    print(set3)

    set4 = set2 - set1
    print(set4)

def symmetric_difference(set1, set2):

    set3 = set1 ^ set2
    print(set3)

if __name__ == '__main__':
    my_set1 = {'hola', 'mundo', 3, 4, 5}
    my_set2 = {'adios', 'mundo', 6, 6, 5}

    union(my_set1, my_set2) # {'hola', 'mundo', 3, 4, 5, 'adios', 6}
    intersection(my_set1, my_set2) # {'mundo', 5}
    difference(my_set1, my_set2) # {'hola', 3, 4} , {'adios', 6}
    symmetric_difference(my_set1, my_set2) # {'hola', 'adios', 3, 4, 6}

Reto:

my_set1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
my_set2 = {2, 4, 6, 8, 10, 12, 14}

#set uniรณn: {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14}
set_union = my_set1 | my_set2
print(set_union)

#set intersecciรณn: {2, 4, 6, 8, 10}
set_intersection = my_set1 & my_set2
print(set_intersection)

#set diferencia: {1, 3, 5, 7, 9}
set_dif = my_set1 - my_set2
print(set_dif)

#set diferencia simรฉtrica: {1, 3, 5, 7, 9, 12, 14}
set_sim = my_set1 ^ my_set2
print(set_sim)

Aqui mi solucion rapida ๐Ÿ˜ƒ:



def union(a: set,b: set):
    c = a | b
    return c

def interseccion(a: set, b:set ):
    c = a & b
    return c

def diferencia(a: set, b: set):
    c = a - b
    return c

def diferencia_s(a:set, b:set):
    c = a ^ b
    return c



def run():
    print("ejemplos de sets: ")
    set1: set = {1,3,4,5,"hola", 0.1, 0,2}
    set2: set = {1,5,6,8,11,0,1,"chau",2}
    
    print("union:")
    print(union(set1,set2))          
    print("_________")
    print("interseccion:")
    print(interseccion(set1,set2)) 
    print("_________")
    print("diferencia:")
    print(diferencia(set1,set2)) 
    print("_________")
    print("diferencia simetrica:")
    print(diferencia_s(set1,set2))    
     


if __name__ == '__main__':
    run()

Asi quedo el reto utilizando los 2 metodos para las operaciones con sets. ๐Ÿ˜

def run():
    nombres1 = {'Juan', 'Pedro', 'Ana', 'Maria', 'Juan'}
    nombres2 = {'Pedro', 'Ana', 'Maria', 'Juan', 'Federico'}

    # Union
    nombres3 = nombres1 | nombres2
    nombres_union = nombres1.union(nombres2)
    print('#Union\n')
    print(nombres3)
    print(f'{nombres_union}\n')

    # Intersecciรณn
    nombres4 = nombres1 & nombres2
    nombres_interseccion = nombres1.intersection(nombres2)
    print('#Intersecciรณn\n')
    print(nombres4)
    print(f'{nombres_interseccion}\n')

    # Diferencia
    nombres5 = nombres1 - nombres2
    nombres_dif = nombres2 - nombres1
    nombres_diferencia = nombres1.difference(nombres2)
    print('#Diferencia\n')
    print(nombres5)
    print(f'{nombres_diferencia}\n')
    print(f'#segunda diferencia {nombres_dif}\n')

    # Diferencia simรฉtrica
    nombres6 = nombres1 ^ nombres2
    nombres_diferencia_simetrica = nombres1.symmetric_difference(nombres2)
    print('#Diferencia simรฉtrica\n')
    print(nombres6)
    print(f'{nombres_diferencia_simetrica}\n')



if __name__ == '__main__':
    run()
set1 = {1, 2, 3, 5, 7, 8}
set2 = {1, 3, 4, 6, 8, 9, 11}

set_union = set1 | set2
print(set_union)

# Resultado: {1, 2, 3, 4, 5, 6, 7, 8, 9, 11}

set_intersection = set1 & set2
print(set_intersection)

# Resultado: {8, 1, 3}

set_difference = set1 - set2
print(set_difference)

# Resultado: {2, 5, 7}

set_symmetric_difference = set1 ^ set2
print(set_symmetric_difference)

# Resultado: {2, 4, 5, 6, 7, 9, 11}



Buen dia compaรฑeros!
este es mi granito de arena:

def run():
    
    mi_list = [1,2,3,4,5,6,7,8,9,10,2020,111,80]
    mi_list2 = [1,2,3,4,5,6,7,8,9,10,111,90]
    
    set_mi_list = set(mi_list)
    set_mi_list2 = set(mi_list2)

    union = set_mi_list.union(set_mi_list2)
    intersection = set_mi_list.intersection(set_mi_list2)
    diferencia =  set_mi_list.difference(set_mi_list2)
    diferencia_simetrica = set_mi_list.symmetric_difference(set_mi_list2)

    print(f'esta es una diferencia {diferencia}')
    print(f'esta es una diferencia simetrica {diferencia_simetrica}')
    print(f'esta es una interseccion {intersection}')
    print(f'esta es una union {union}')

if __name__ == "__main__":
    run()
def run():
    my_set1= {1, 2, 3, 4}
    my_set2 = {4,5,6,7}

#union
    my_set3 = my_set1 | my_set2
    print(my_set3) # {1,2,3,4,5,6,7}

#interseccion
    my_set3 = my_set1 & my_set2
    print(my_set3) #{4}

#diferencia
    my_set3 = my_set1 - my_set2
    print(my_set3) #{1,2,3}

    my_set3 = my_set2 - my_set1
    print(my_set3) #{5,6,7}

#diferencia simetrica
    my_set3 = my_set1 ^ my_set2
    print(my_set3) # {1, 2, 3, 5, 6, 7}

if __name__ == 'main':
    run()

def run():
    set_one = {1,3,5,7,9}
    set_two = {2,3,4,6,7,8}
    set_three = set_one | set_two
    set_four = set_one & set_two
    set_five = set_one - set_two
    set_six = set_two - set_one
    set_seven = set_one ^ set_two
    print(set_one)
    print(set_two)
    print(set_three)
    print(set_four)
    print(set_five)
    print(set_six)
    print(set_seven)


if __name__ == '__main__':
    run()

Aporte

my_set1 = {1,3,5,7,9,11,13,17,19,23}
    my_set2 = {1,3,5,7,9,11,13,15,17,19,21,23}

    #set_union = my_set1 | my_set2
    set_union = my_set1.union(my_set2)
    print(set_union)
    #set_intersection = my_set1 & my_set2
    set_intersection = my_set1.intersection(my_set2)
    print(set_intersection)
    #set_difference = my_set1 - my_set2
    set_difference = my_set2.difference(my_set1)
    print(set_difference)
    #set_symetric_difference = my_set1 ^ my_set2
    set_symetric_difference = my_set1.symmetric_difference(my_set2)
    print(set_symetric_difference)
# operations with sets

def run():
    students = {
        "Alejandro",
        "Edgar",
        "Brayan",
        "Fani",
        "Lupe"
    }

    scholarship_students = {
        "Antonio",
        "Pedro",
        "Edgar",
        "Fani",
        "Lupe"
    }

    # Union of sets
    print(students | scholarship_students) # output: {'Edgar', 'Brayan', 'Antonio', 'Fani', 'Lupe', 'Pedro', 'Alejandro'}

    # Intersection of sets
    print(students & scholarship_students) # output: {'Fani', 'Edgar', 'Lupe'}

    # Difference of sets
    print(students - scholarship_students) # output: {'Alejandro', 'Brayan'}
    print(scholarship_students - students) # output: {'Pedro', 'Antonio'}

    # symmetric difference of sets
    print(students ^ scholarship_students) # output: {'Pedro', 'Alejandro', 'Brayan', 'Antonio'}


if __name__ == '__main__':
    run()

Reto Cumplido!

# Crear 2 sets
set_A = set()
set_B = set()

# agregar elementos a los conjuntos
set_A.add(1)
set_A.add(2)
set_A.add(3)
set_A.add(4)
set_A.update([True, False, 10])

set_B.add(2)
set_B.add(15)
set_B.update([1, 8, 8], {10, 11})

# eliminamos el elemento 15 del conjunto 1
set_A.discard(15)
# eliminamos el elemento 8 del conjunto 2
set_B.remove(8)

# Realizamos operaciones

# union
set_union = set_A | set_B
# interseccion
set_interseccion = set_A & set_B
# diferencia A
set_diferencia_A = set_A - set_B
# diferencia B
set_diferencia_B = set_B - set_A
# diferencia simetrica
set_diferencia_simetrica = set_A ^ set_B


if __name__ == '__main__':
   # imprimimos todo
   # tipos
   print("Tipo de set_A: {0}".format(type(set_A)))
   print("Tipo de set_A: {0}".format(type(set_B)))
   print("Conjunto 1: ", set_A)
   print("Conjunto 1: ", set_B)
   print("Union: {0}".format(set_union))
   print("Interseccion: {0}".format(set_interseccion))
   print("Diferencia A: {0}".format(set_diferencia_A))
   print("Diferencia B: {0}".format(set_diferencia_B))
   print("Diferencia Simetrica: {0}".format(set_diferencia_simetrica))

Operaciones con sets

sets_1 = {"a","b","c","d","e"}
sets_2 = {"c","a","e","z","d"}

#union utiliza |
union = sets_1 | sets_2
print (f"Esta es la union {union}")

#   intersecciรณn utiliza &

intersecction = sets_1 & sets_2
print (f"Esta es la intersecciรณn {intersecction}")

# diferencia

diferencia_1 = sets_1 - sets_2
print (f"Esta es la diferencia 1 {diferencia_1}")

diferencia_2 = sets_2 - sets_1
print (f"Esta es la diferencia 2 {diferencia_2}")

#diferencia simรฉtrica
dif_simetric = sets_1 ^ sets_2
print (f"Esta es la diferencia simรฉtrica {dif_simetric}")

Operaciones con sets:

set1 = {3,4,5}
set2 = {5,6,7}

# Union
set3 = set1 | set2
# Resultado
set3 = {3,4,5,6,7}

# Inercesion
set3 = set1 & set2
# Resultado
set3 = {5}

# Diferencia
set3 = set1 - set2
# Resultado
set3 = {3, 4}

# Diferencia simetrica
set3 = set1 ^ set2
# Resultado
set3 = {3, 4, 6, 7} 

Los temas de conjuntos de matematicas discretas, python lo demuestra con los sets โค๏ธ

RETO ๐Ÿค‘:

def reporting(func):
    def wrapper(*args):
        print("By Calculting operations...")
        results = func(*args)
        print(f"""
------------------------------------
Union: {results[0]}
Intersection: {results[1]}
Difference: {results[2]}
Symetric difference: {results[3]}
------------------------------------""")
        print("""
Finshed :)""")
    return wrapper

@reporting
def operations(set_4, set_5):
    union_set = set_4.union(set_5)
    intersection = set_4.intersection(set_5)
    difference = set_5.difference(set_4)
    symetric_difference = set_4.symmetric_difference(set_5)
    return union_set, intersection, difference, symetric_difference

def data(file_name):
    set_1 = set()
    with open(f"./{file_name}.txt", "r", encoding="utf-8") as f:
        for i in f:
            set_1.add(int(i.strip("\n")))
    return set_1

def run():
    set_multiple_4 = data("multiple_of_4")
    set_multiple_5 = data("multiple_of_5")
    operations(set_multiple_4, set_multiple_5)

if __name__=='__main__':
    run()

multiple_of_4.txt

8
12
16
20
24
28
32
36
40

multiple_of_5

10
15
20
25
30
35
40
45
50

este es mi aporte a la clase:

def run():
    set1 = {2,4,6,9,12,"Hola", "Adios", "nike"}
    set2 = {5,6,2,8,10,"nike", "Adios"}
    print("este es el sets1:", set1)
    print("este es el sets2:", set2)

    set3 = set1.union(set2)
    print("este es la union de los sets:", set3)
    set4 = set1.intersection(set2)
    print("este es la interseccion de los sets:", set4)
    set5 = set1.difference(set2)
    print("este es la diferencia de los sets:", set5)
    set6 = set1.symmetric_difference(set2)
    print("este es la diferencia simetrica de los sets:", set6)


if __name__ == "__main__":
    run()

mi aporte a lo planteado, utilice tambiรฉn los mรฉtodos de los sets

<
set1={"hola",1,2,3, (1,2)}
set2={"mundo",1,3,4,5,6,(2,3)}
print(set1)
print(set2)

set_union = set1|set2
set_union_c = set1.union(set2)
set_inter = set1 & set2
set_inter_c= set1.intersection(set2)
set_dif = set1 - set2
set_dif_c = set1.difference(set2)
set_dif_sim=set1 ^ set2 
set_dif_sim_c=set1.difference_update(set2)
print(set_union)
print(set_union_c)
print(set_inter)
print(set_inter_c)
print(set_dif)
print(set_dif_c)
print(set_dif)
print(set_dif_c)

> 

Yo mandรฉ algo re simple.

set_01 = {1, 3, 5, 76}
set_02 = {1, 2, 11, 3, 4, 76, 54}

set_union = set_01 | set_02
set_intersection = set_01 & set_02
set_diference = set_01 - set_02
set_diference_bis = set_02 - set_01
set_diference_symetric = set_01 ^ set_02

print(set_01)
print(set_02)
print("....")
print("....")


print(set_union)
print(set_intersection)
print(set_diference)
print(set_diference_bis)
print(set_diference_symetric)

Reto

set_digimon = {"Gabumon","Gomamon","Palmon","Piyomon"}
set_pokemon = {"Bulbasor","Venusaur","Pikachu","Charmander"}

union = set_digimon | set_pokemon
interseccion = set_digimon & set_pokemon
diferencia_digi = set_digimon - set_pokemon
diferencia_poke = set_pokemon - set_digimon 
diferencia_asimetrica = set_pokemon ^ set_digimon 

print(union)
print(interseccion)
print(diferencia_digi)
print(diferencia_poke)
print(diferencia_asimetrica)

Representaciรณn grafica junto a la operaciรณn de Python


Alguien vio Avatar?, me di cuenta despuรฉs de terminar que hice los sets de cada naciรณn y no los use jajaja

Mi ejemplo de reto

<code> 
def run():
    set_1 = {1,2,3,3,4,5,5,}
    set_2 = {1,6,7,8,9,9}

    print(set_1)
    print('Set 1\n')
    
    print(set_2)
    print('Set 2\n')

    # Union.
    set_3 = set_1 | set_2
    print (set_3)
    print('Union\n')
    
    # Intersection.
    set_4 = set_1 & set_2
    print (set_4)
    print('Intersection\n')

    # Difference.
    set_5 = set_1 - set_2
    print (set_5)
    print('Difference\n')

    # Asymmetric difference.
    set_6 = set_1 ^ set_2
    print(set_6)
    print('Asymmetric difference\n')

if __name__ == '__main__':
    run()

mi soluciรณn. Es mejorable por supuesto.

import os

set1 =set()
set2 = set()


def typesOfSets(opttion):

    if opttion == 1:
        set3 = set1 | set2
        print("Set uniรณn: ", set3)
    elif opttion == 2:
        set3 = set1 & set2
        print("Set intersecciรณn: ", set3)

    elif opttion == 3:
        set3 = set1-set2
        print("Set diferencia: ", set3)

    elif opttion == 4:
        set3 = set1 ^ set2
        print("Set diferencia simรฉtrica: ", set3)

    else:
        print("Bad Option")


def statusSets(sett):
    
    status = True

    while status:
        optionSet = int(input("Ingrese un valor para almacenar en el set{}:".format(sett)))
        
        if sett == 1:
            set1.add(optionSet)
            print(set1)
            yesOrNot = input("Desea ingresar otro valor?: (y/n)").lower()
            if yesOrNot == "y" or yesOrNot == "yes":
                continue
            elif yesOrNot == "n" or yesOrNot == "not":
                print(set1)
                status = False
            else:
                print("Opciรณn incorrecta!")
                status = False
        elif sett ==2:
            set2.add(optionSet)
            print(set2)
            yesOrNot = input("Desea ingresar otro valor?: (y/n)").lower()
            if yesOrNot == "y" or yesOrNot == "yes":
                continue
            elif yesOrNot == "n" or yesOrNot == "not":
                print(set2)
                status = False
            else:
                print("Opciรณn incorrecta!")
                status = False


def setChoice():
    os.system("clear")
    print("""
    1.- {}
    2.- {} """.format(set1, set2))
    opcion1 = int(input("Escoja un set de datos vacรญo: "))
    if opcion1 == 1:
        statusSets(opcion1) 
        os.system("clear")
    elif opcion1 == 2:
        statusSets(opcion1) 
        os.system("clear")
    else:
        print("No existe ese set de datos!")
    print(set1, set2)

setChoice()
setChoice()
print("""
SELECCIONE UNA OPCION:

        1.- Uniรณn (Selecciona todos los elementos de ambos sets, dejando solo 1 elemento en el caso de repetirse alguno)
        2.- Intersecciรณn (Selecciรณn de solo los elementos comunes en ambos sets y eliminando repetidos)
        3.- Diferencia (Todos los elementos del primer set, eliminando aquellos elementos comunes con el set2 y eliminando repetidos)
        4.- Diferencia simรฉtrica (Todos los elementos de ambos sets, eliminando aquellos elementos comunes y eliminando repetidos)
        """)

opttion = int(input("Opciรณn: "))
typesOfSets(opttion)

import random

def union(my_set1, my_set2):
    my_set3 = my_set1 | my_set2
    print(f'El resultado de la uniรณn es: {my_set3}')

def interseccion(my_set1, my_set2):
    my_set3 = my_set1 & my_set2
    print(f'El resultado de la intersecciรณn es: {my_set3}')

def diferencia1(my_set1, my_set2):
    my_set3 = my_set1 - my_set2
    print(f'Set1 - Set2, es: {my_set3}')

def diferencia2(my_set1, my_set2):
    my_set3 = my_set2 - my_set1
    print(f'Set2 - Set1, es: {my_set3}')

def diferencia_simetrica(my_set1, my_set2):
    my_set3 = my_set1 ^ my_set2
    print(f'La diferencia simรฉtrica, es: {my_set3}')


def run():
    my_set1 = set()
    my_set2 = set()

    while len(my_set1) < 10:
        my_set1.add(random.randint(1,100))

    while len(my_set2) < 10:
        my_set2.add(random.randint(1,100))

    print(my_set1)
    print(my_set2)

    
    # Uniรณn:
    union(my_set1, my_set2)

    # Intersecciรณn:
    interseccion(my_set1, my_set2)

    # set1 - set2
    diferencia1(my_set1, my_set2)

    # set2 - set1
    diferencia2(my_set1, my_set2)

    # Diferencia Simรฉtrica
    diferencia_simetrica(my_set1, my_set2)
    

if __name__ == '__main__':
    run()

Operaciones con โ€˜setโ€™

mi_set1 = {3,4,5,6}
mi_set2 = {5,6,7,8}

mi_set3 = mi_set1 | mi_set2
print("Uniรณn de sets: ", mi_set3)

mi_set3 = mi_set1 & mi_set2
print("Intersecciรณn de 'sets: ", mi_set3)

mi_set3 = mi_set1 - mi_set2
print("Diferencia de โ€˜setsโ€™ 1 a 2: ", mi_set3)

mi_set3 = mi_set2 - mi_set1
print("Diferencia de โ€˜setsโ€™ 2 a 1: ", mi_set3)

mi_set3 = mi_set1 ^ mi_set2
print("Diferencia simรฉtrica de โ€˜setsโ€™: ", mi_set3)

my_set_a = {23, 12, 20, 15, 26, 27, 1}
my_set_b = {3, 5, 20, 14, 1, 7, 8, 10, 2}

my_set_union = my_set_a | my_set_b
print('Uniรณn: ', my_set_union)

my_set_interseccion = my_set_a & my_set_b
print('Intersecciรณn: ', my_set_interseccion)

my_set_diferencia1 = my_set_a - my_set_b
print('Diferencia 1: ', my_set_diferencia1)

my_set_diferencia2 = my_set_b - my_set_a
print('Diferencia 2: ', my_set_diferencia2)

my_set_dif_simetrica = my_set_a ^ my_set_b
print('Diferencia Simรฉtrica: ', my_set_dif_simetrica)

![](

set1 = {9, 'a', 'A', 8, 7, 5, 4, 3, 2, 1, 'B'}
set2 = {'a', 2,9, 'A', 8, 7, 5, 4, 3, 2, 1, 0.1}

set3 = set1 | set2

set4 = set1 & set2

set5 = set1 - set2

set6 = set1 ^ set2

set7 = set2 - set1


if __name__ == '__main__':
    print(f'Set 1: {set1}')
    print(f'Set 2: {set2}')
    print(f'Set 3: {set3}')
    print(f'Set 4: {set4}')
    print(f'Set 5: {set5}')
    print(f'Set 6: {set6}')
    print(f'Set 7: {set7}')

Usando sets comprenhensions para crear un set que contenga nรบmeros primos y otro que tenga nรบmeros impares.

# Union de dos conjuntos

set1 = {x for x in range(2, 60) if all(x % y != 0 for y in range(2, x))} # numeros primos
set2 = {x*2+1 for x in range(20)} # numeros impares

set_union = set1 | set2
print(set_union)

# Interseccion de conjuntos

set_intereccion = set1 & set2
print(set_intereccion)

# Diferencia de conjuntos

set_diff = set1 - set2
print(set_diff)

# Diferencia Simetrica

set_sim_diff = set1 ^ set2
print(set_sim_diff)

Este tema si lo entendรญ mรกs fรกcil que los anteriores. jajajaja

Mi aporte,

Mi solucion al reto

Hice sets con jugadores de Liverpool y con uno que nos abandono hace unos aรฑos:

jugadores1 = {"Salah", "Mane", "Thiago", "Dรญaz", "Coutinho"}
jugadores2 = {"Coutinho", "Alisson", "Robertson", "Fabinho"}

#Union
jugadorestotales = jugadores1 | jugadores2
print(jugadorestotales)
#{'Coutinho', 'Dรญaz', 'Thiago', 'Fabinho', 'Mane', 'Robertson', 'Salah', 'Alisson'}

#Intersecciรณn
jugadorestotales = jugadores1 & jugadores2
print(jugadorestotales)
#{'Coutinho'}

#Diferencia
jugadorestotales1 = jugadores1 - jugadores2
jugadorestotales2 = jugadores2 - jugadores1
print(jugadorestotales1) #{'Salah', 'Dรญaz', 'Mane', 'Thiago'}
print(jugadorestotales2) #{'Fabinho', 'Alisson', 'Robertson'}

# Diferencia simรฉtrica
jugadorestotales = jugadores1 ^ jugadores2
print(jugadorestotales)
#{'Salah', 'Dรญaz', 'Thiago', 'Mane', 'Robertson', 'Fabinho', 'Alisson'}

Es el mismo concepto de intersecciรณn a conjuntos.


a = {5, 6, 7, 8, 9}
b = {2, 4, 6, 8, 9}
c = {1, 2, 3, 4}

union = a | b
print(f"Union {union}")

inter = a & b
print(f"Interseccion {inter}")

dif1, dif2 = a - b, b - a
print(f"Diferencia {dif1}")
print(f"Diferencia {dif2}")

difSim1 = a ^ b
print(f"Diferencia simetrica {difSim1}")

set1 = {1,5,6}
set2 = {3,5,9}

intersection = set1 & set2
Join = set1 ^ set2
Rest = set1 - set2
Rest2 = set2 - set1

print(intersection, Join, Rest, Rest2)
my_set1= {"Fenando", "Cartagena", 617881, True, 34}
my_set2 = {"Developer", "Cartagena", 617881, ("Python", "Js", "HTML", "CSS"), 34, True}


# Uniรณn
my_set3 = my_set1 | my_set2
print(my_set3)

# Intersecciรณn
my_set4 = my_set1 & my_set2
print(my_set4)

# Diferencia

my_set5 = my_set1 - my_set2
print(my_set5)

my_set6 = my_set2 - my_set1
print(my_set6)

# Diferencia Simรฉtrica

my_set7 = my_set1 ^ my_set2
print(my_set7)

Reto:


if __name__ == "__main__":
    set1 = {23,24,25}
    set2 = {24,25,30}
    
    set_pares = {2,4,6,8}
    set_impares= {1,3,5,7,9}
    set_pares_impares = set_pares | set_impares
    print(set_pares_impares)
    set1_and_set2 = set1 & set2
    print(set1_and_set2)
    set1_menos_set2 = set1 - set2
    print(set1_menos_set2)
    diferencia_simetrica = set1 ^ set2
    print(diferencia_simetrica)

Me habรญa quedado con la idea de que al hacer la operaciones, Python sacaba los elementos de las tuplas y los ponรญa en un set pero ya me quedรณ claro que eso no es asรญ:

El operador de xor " ^ "
Lo pueden realizar con alt + 94

Hola a todos, mi aporte:

set1 = {2,3,4,5,6,7}
set2={2,3,10,13,14,15,16}

set3 = set1 | set2
print("union entre set")
print(set3)

set4 = set1 & set2
print("interseccion entre set")
print(set4)

set5 = set1-set2
print("diferencia entre set")
print(set5)

set6= set1 ^ set2
print("diferencia simetrica entre set")
print(set6)

sets y sus operaciones

def run():
    set_1 = {1, 2, 3, 4}
    set_2 = {3, 4, 5, 6}
    set_3 = set_1.union(set_2)
    set_4 = set_1.symmetric_difference(set_2)
    set_5 = set_1.difference(set_2)
    set_6 = set_2.difference(set_1)
    set_7 = set_1.intersection(set_2)
    print(f'set 1: {set_1}')
    print(f'set 2: {set_2}') 
    print(f'Union: {set_3}')
    print(f'Symetric: {set_4}')
    print(f'Diference: {set_5}')
    print(f'Inversed diference: {set_6}')
    print(f'Intersection: {set_7}')

if __name__ == '__main__':
    run()