🎯 Enumerações em Python
Em poucas palavras
Em Python, enumerações (enums) são uma forma de criar um conjunto de nomes simbólicos (membros) vinculados a valores únicos e constantes. Elas fornecem uma maneira clara e legível de representar um conjunto fixo de opções ou estados. Python oferece duas formas principais de trabalhar com enumerações: a função
enumerate()e a classeEnumdo móduloenum.
📝 Notas e Desenvolvimento
1. Função enumerate()
A função enumerate() é usada para iterar sobre uma sequência (como uma lista, tupla ou string) e obter tanto o índice quanto o valor de cada elemento. Ela não cria uma enumeração formal, mas é útil para numerar os elementos de uma sequência existente.
Exemplo:
names = ["Alice", "Bob", "Charlie", "Debbie"]
for i, name in enumerate(names):
print(f"Name {i} is {name}")Saída:
Name 0 is Alice
Name 1 is Bob
Name 2 is Charlie
Name 3 is Debbie
Explicação:
enumerate(names): Retorna um iterador que produz pares(índice, valor)para cada elemento da listanames.for i, name in enumerate(names): Desempacota cada par emi(o índice) ename(o valor).
2. Classe Enum (do módulo enum)
A classe Enum do módulo enum permite criar enumerações formais, onde cada membro tem um nome e um valor associado. Isso oferece mais estrutura e segurança em comparação com o uso de constantes soltas.
Exemplo:
from enum import Enum
---
# 🔗 Conexões e Contexto
- **Atlas:** [[MdC - Programação]]
- **Notas Relacionadas:** [[ ]]
---
# 📚 Referências e fontes
## Links Externos
- [Youtube](url)
- [Wikipedia](url)
## Citações Diretas
## 📂 Outros Conteúdos Preservados
### Enumerações em [[Linguagem de programação Python|Python]]
> [!NOTE] Enumerações em [[Linguagem de programação Python|Python]]
>
> Em [[Linguagem de programação Python|Python]], enumerações (enums) são uma forma de criar um conjunto de nomes simbólicos (membros) vinculados a valores únicos e constantes. Elas fornecem uma maneira clara e legível de representar um conjunto fixo de opções ou estados. [[Linguagem de programação Python|Python]] oferece duas formas principais de trabalhar com enumerações: a função `enumerate()` e a classe `Enum` do módulo `enum`.
**:: Referência ::**
### Sintaxe de classe
class Color(Enum):
RED = 1
GREEN = 2
BLUE = 3
### Sintaxe funcional
### Color = Enum('Color', ['RED', 'GREEN', 'BLUE']) #Não recomendada
print(Color.RED) # Output: Color.RED
print(Color.RED.value) # Output: 1
print(Color(1)) # Output: Color.RED
print(Color['RED']) # Output: Color.RED
for color in Color:
print(color)Saída:
Color.RED
1
Color.RED
Color.RED
Color.RED
Color.GREEN
Color.BLUE
Explicação:
from enum import Enum: Importa a classeEnumdo móduloenum.class Color(Enum): Define uma nova enumeração chamadaColorque herda da classeEnum.RED = 1,GREEN = 2,BLUE = 3: Define os membros da enumeração, associando um nome a um valor.Color.RED: Acessa o membroREDda enumeraçãoColor.Color.RED.value: Acessa o valor associado ao membroRED(que é 1).Color(1): Cria um membro da enumeração a partir do valor 1 (retornaColor.RED).Color['RED']: Acessa o membroREDda enumeraçãoColorusando seu nome como chave.for color in Color: Itera sobre todos os membros da enumeração.
Vantagens de usar a classe Enum:
- Legibilidade: Torna o código mais claro e fácil de entender.
- Segurança: Impede o uso de valores inválidos.
- Manutenção: Facilita a manutenção e a refatoração do código.
- Evita erros: Garante que você está usando apenas os valores definidos na enumeração.
Quando usar enumerações?
Use enumerações quando você tiver um conjunto fixo de opções ou estados que precisam ser representados de forma clara e segura. Exemplos:
- Cores (vermelho, verde, azul)
- Dias da semana (segunda, terça, quarta, etc.)
- Status de um pedido (pendente, processando, enviado, entregue)
- Níveis de prioridade (baixa, média, alta)
Referências: