Enumerações

Skip to content

Este é um texto traduzido automaticamente que pode conter erros!

Enums (enumerações) são uma maneira de definir um tipo de dado que só pode ter um conjunto limitado de valores predefinidos. Isso torna mais fácil evitar erros, pois uma variável só pode ter valores válidos.

Enums não são usados estritamente para validação, mas eles nos ajudam a limitar quais valores são válidos para uma variável e, portanto, podem ajudar a prevenir erros.

Por exemplo, se você tem uma classe que representa um carro, você pode usar um Enum para definir quais cores o carro pode ter:

from enum import Enum

class CarColor(Enum):
    RED = "red"
    BLUE = "blue"
    GREEN = "green"
    BLACK = "black"
    WHITE = "white"

class Car:
    def __init__(self, make: str, model: str, year: int, color: CarColor):
        self.make = make
        self.model = model
        self.year = year
        self.color = color

Porquê?

A nossa IDE fornece melhor autocompletar quando usamos enums, e evitamos (tornamos difícil) definir valores inválidos. Se tentarmos atribuir uma cor que não está definida em CarColor, o Python lançará um erro. Isso torna o código mais robusto e mais fácil de manter. Quanto menos erros possíveis puderem ocorrer, melhor a qualidade do código.

Imagine que temos uma função que lida com métodos de pagamento: PayPal, VISA, MASTERCARD e BITCOIN. Ao usar um Enum para métodos de pagamento, podemos garantir que a função receba apenas métodos de pagamento válidos, e não "MASTERCARDD" ou "CASH", o que pode levar a erros no programa.

Enum Meme

Easy Tarefa 1 - Crie um Enum

Crie um Enum chamado EyeColor e implemente-o na classe Person do módulo anterior. EyeColor deve ter os seguintes valores:

  • BLUE
  • BROWN
  • GREEN
  • HAZEL

Enum é muito usado no desenvolvimento de jogos

Se você pesquisar na documentação de vários jogos, frequentemente verá que eles usam Enums para definir coisas como armas, inimigos, níveis e similares. Isso ocorre porque torna mais fácil gerenciar essas coisas no código e facilita a prevenção de erros.

https://learn.microsoft.com/en-us/minecraft/creator/scriptapi/minecraft/server/blockpistonstate?view=minecraft-bedrock-stable

Parabéns, agora você entende enums