Conhecimento Base

0 – Python
1 – Conhecimento Base
1.0 – Configuracoes
1.1 – Tipos de Dados
1.2 – Declaração de Variáveis
1.3 – Declaração de Constantes
1.4 – Funções e Módulos
1.5 – Orientação a Objetos
1.6 – Módulos e Pacotes
1.7 – Entrada e Saída
1.8 – Bibliotecas Integradas – Pypi
1.9 – Paradgmas de Programação
1.10 – Frameworks Populares (ecosistema)
LEGENDA
Nivel_1
Nivel_2
Nivel_3

1. Tipos de Dados Básicos

2. Variáveis e Atribuições

3. Operadores Básicos

4. Estruturas de Controle

5. Formatação de Saída

6. Estruturas de Dados Compostas

7. Funções e Escopo

8. Módulos e Pacotes

Dicas para um Aprendizado Eficaz

  1. Pratique regularmente escrevendo código
  2. Experimente modificar exemplos existentes
  3. Resolva problemas práticos com Python
  4. Consulte a documentação oficial quando necessário
  5. Participe de comunidades Python para tirar dúvidas
  6. Salve projetos no GitHub e os publique

Set vs Frozenset

Mamute congelado em uma geleira

Em Python, tanto set quanto frozenset são estruturas de dados que armazenam coleções não ordenadas de elementos únicos. A principal diferença está na mutabilidade.

Set (Mutável)

Um set é uma coleção mutável – você pode adicionar, remover e modificar elementos após a criação.

Características:

  • Mutável
  • Não ordenado
  • Elementos únicos
  • Não indexado

Exemplo de uso:

Frozenset (Imutável)

Um frozenset é uma versão imutável do set – após a criação, não pode ser modificado.

Características:

  • Imutável
  • Não ordenado
  • Elementos únicos
  • Pode ser usado como chave de dicionário

Exemplo de uso:

Vantagens do Set:

  • Pode ser modificado conforme necessário
  • Útil para operações que requerem alterações frequentes
  • Métodos como add(), remove(), discard(), etc.

Desvantagens do Set:

  • Não pode ser usado como chave de dicionário
  • Não é hasheável
  • Menos seguro em contextos que requerem imutabilidade

Vantagens do Frozenset:

  • Imutável e seguro para uso em contextos que requerem imutabilidade
  • Pode ser usado como chave de dicionário
  • É hasheável

Desvantagens do Frozenset:

  • Não pode ser modificado após a criação
  • Menos flexível para operações dinâmicas
  • Não possui métodos de modificação

Relação entre Set e Frozenset

É possível converter entre set e frozenset conforme necessário:

Guia de Decisão: Quando usar cada um

Use set quando:

  • Você precisa modificar a coleção frequentemente
  • Não precisa usar a coleção como chave de dicionário
  • Está trabalhando com dados que mudam dinamicamente

Use frozenset quando:

  • Você precisa de uma coleção imutável
  • Quer usar a coleção como chave de dicionário
  • Está trabalhando com dados que não devem mudar
  • Precisa de segurança contra modificações acidentais

Conclusão

Tanto set quanto frozenset são úteis em diferentes contextos. A escolha entre eles depende principalmente se você precisa de mutabilidade ou imutabilidade. Enquanto os sets são flexíveis e mutáveis, os frozensets oferecem imutabilidade e a capacidade de serem usados como chaves em dicionários.