Laboratorio de gestión de conjuntos en Python

PythonBeginner
Practicar Ahora

Introducción

Bienvenido a "Python Sets Lab", donde se te desafía a dominar las poderes arcánicos de los conjuntos de Python en un emocionante escenario del inframundo. La escena se desarrolla dentro de la Forja Infernal, un reino tenebroso donde el fuego chisporrotea y el aire está cargado con vapores sofocantes. Aquí, el Rey Demonio, gobernante de las regiones inferiores, ha descubierto que los tesoros de su dominio están desapareciendo: entidades mágicas únicas por naturaleza, nunca para ser duplicadas. Un antiguo manuscrito revela una solución: la utilización de conjuntos de Python para administrar los activos de su reino sin redundancia.

Tu misión, si decides aceptarla, es aprovechar el poder de los conjuntos de Python para ayudar al Rey Demonio a organizar sus tesoros místicos, asegurando que cada uno sea tan único como las horripilantes llamas de la misma forja. Fascina al Rey Demonio con tu destreza y podrías encontrarte alabado entre las leyendas del inframundo.

Creando tu primer conjunto

En este paso, crearás tu primer conjunto de Python para almacenar los tesoros únicos del Rey Demonio. Asumiremos que ya estás sentado en tu terminal en /home/labex/project. Comencemos por los básicos creando un conjunto simple y agregando algunas entidades a él.

Abre /home/labex/project/unique_treasures.py e ingresa el siguiente código:

## unique_treasures.py

## Creando un conjunto vacío
treasures_set = set()

## Agregando tesoros únicos al conjunto
treasures_set.add('Soul Gem')
treasures_set.add('Infernal Blade')
treasures_set.add('Cursed Crown')

print(treasures_set)

Después de guardar el archivo, ejecuta tu código con:

python unique_treasures.py

La salida esperada debe mostrar un conjunto con los tres tesoros únicos:

{'Soul Gem', 'Cursed Crown', 'Infernal Blade'}

El orden puede variar ya que los conjuntos no mantienen el orden.

Operaciones con conjuntos

Ahora que has creado un conjunto, es hora de aprender cómo realizar operaciones con conjuntos. El Rey Demonio desea combinar sus tesoros con los de un Señor Oscuro aliado, pero solo quiere listar cada artículo único una vez. Además, quiere saber qué tesoros tiene en común con el aliado para un ritual especial.

Aquí es lo que agregas a /home/labex/project/set_operations.py:

## set_operations.py

## Tesoros del Rey Demonio
demon_king_treasures = {'Soul Gem', 'Infernal Blade', 'Cursed Crown'}

## Tesoros del Señor Oscuro aliado
overlord_treasures = {'Elixir of Immortality', 'Soul Gem', 'Chalice of Power'}

## Unión de ambos conjuntos para una colección única combinada
all_unique_treasures = demon_king_treasures.union(overlord_treasures)

## Intersección de ambos conjuntos para los tesoros comunes
common_treasures = demon_king_treasures.intersection(overlord_treasures)

print('Todos los Tesoros Únicos:', all_unique_treasures)
print('Tesoros Comunes:', common_treasures)

Después de guardar, ejecuta el programa con:

python set_operations.py

Deberías ver una salida que liste todos los tesoros únicos, y los comunes deberían listar el Soul Gem:

Todos los Tesoros Únicos: {'Infernal Blade', 'Elixir of Immortality', 'Cursed Crown', 'Chalice of Power', 'Soul Gem'}
Tesoros Comunes: {'Soul Gem'}

Resumen

En este laboratorio, exploramos el mundo de los conjuntos de Python en un escenario imaginario que involucra la Forja Infernal y el Rey Demonio. Comenzamos creando un conjunto simple en Python para administrar elementos únicos y luego avanzamos a aplicar operaciones de conjuntos como unión e intersección para resolver problemas complejos.

En general, no solo logramos nuestro objetivo de ayudar al Rey Demonio a administrar sus tesoros, sino que también mejoramos nuestra comprensión de una estructura de datos poderosa en Python: el conjunto.