Laboratório de Gerenciamento de Conjuntos Python

PythonBeginner
Pratique Agora

Introdução

Bem-vindo ao "Lab de Conjuntos Python", onde você é desafiado a dominar os poderes arcanos dos conjuntos Python em um cenário subterrâneo de tirar o fôlego. A cena se passa na Forja Infernal, um reino sombrio onde o fogo crepita e o ar é espesso com vapores sensuais. Aqui, o Rei Demônio, governante das regiões infernais, descobriu que os tesouros de seu domínio estão desaparecendo – entidades mágicas únicas em sua natureza, nunca duplicadas. Um antigo script revela uma solução: a utilização de conjuntos Python para gerenciar os bens de seu reino sem redundância.

Sua missão, caso a aceite, é aproveitar o poder dos conjuntos Python para auxiliar o Rei Demônio na organização de seus tesouros místicos, garantindo que cada um seja tão único quanto as chamas horríveis da própria forja. Fascinando o Rei Demônio com sua proeza, você poderá se ver louvado entre as lendas do submundo.

Criando Seu Primeiro Conjunto

Nesta etapa, você criará seu primeiro conjunto Python para armazenar os tesouros únicos do Rei Demônio. Assumimos que você já está sentado em seu terminal em /home/labex/project. Vamos começar com o básico, criando um conjunto simples e adicionando algumas entidades a ele.

Abra /home/labex/project/unique_treasures.py e insira o seguinte código:

## unique_treasures.py

## Criando um conjunto vazio
treasures_set = set()

## Adicionando tesouros únicos ao conjunto
treasures_set.add('Soul Gem')
treasures_set.add('Infernal Blade')
treasures_set.add('Cursed Crown')

print(treasures_set)

Após salvar o arquivo, execute seu código com:

python unique_treasures.py

A saída esperada deve exibir um conjunto com os três tesouros únicos:

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

A ordem pode ser diferente, pois os conjuntos não mantêm a ordem.

Operações de Conjunto

Agora que você criou um conjunto, é hora de aprender como realizar operações de conjunto. O Rei Demônio deseja combinar seus tesouros com os de um Lorde Supremo aliado, mas só quer listar cada item único uma vez. Além disso, ele quer saber quais tesouros ele tem em comum com o aliado para um ritual especial.

Aqui está o que você adicionará a /home/labex/project/set_operations.py:

## set_operations.py

## Tesouros do Rei Demônio
demon_king_treasures = {'Soul Gem', 'Infernal Blade', 'Cursed Crown'}

## Tesouros do Lorde Supremo aliado
overlord_treasures = {'Elixir of Immortality', 'Soul Gem', 'Chalice of Power'}

## União de ambos os conjuntos para uma coleção única combinada
all_unique_treasures = demon_king_treasures.union(overlord_treasures)

## Intersecção de ambos os conjuntos para tesouros comuns
common_treasures = demon_king_treasures.intersection(overlord_treasures)

print('All Unique Treasures:', all_unique_treasures)
print('Common Treasures:', common_treasures)

Após salvar, execute o programa com:

python set_operations.py

Você deve ver uma saída listando todos os tesouros únicos, e os comuns devem listar a Soul Gem:

All Unique Treasures: {'Infernal Blade', 'Elixir of Immortality', 'Cursed Crown', 'Chalice of Power', 'Soul Gem'}
Common Treasures: {'Soul Gem'}

Resumo

Neste laboratório, mergulhamos no mundo dos conjuntos Python dentro de um cenário imaginativo envolvendo a Infernal Forge e o Rei Demônio. Começamos criando um conjunto simples em Python para gerenciar itens únicos e, em seguida, progredimos para aplicar operações de conjunto, como união e intersecção, para desvendar problemas complexos.

No geral, não apenas alcançamos nosso objetivo de auxiliar o Rei Demônio na gestão de seus tesouros, mas também aprimoramos nossa compreensão de uma poderosa estrutura de dados em Python: o conjunto (set).