Números Mágicos em Python: Guia do Iniciante para Código Mais Limpo

O que são Números Mágicos?

Você já viu um código assim?

PYTHON
def calcular_desconto(preco):
    return preco * 0.15
Clique para expandir e ver mais

O que significa 0.15? É 15%? Um desconto? Um imposto?

Números mágicos são valores numéricos que aparecem no código sem nenhuma explicação. Eles tornam o código difícil de ler, manter e depurar.


Por que Números Mágicos são Problema?

1. Difícil de Ler

Outros desenvolvedores (ou você mesmo, no futuro) não conseguem entender o significado dos números.

2. Difícil de Manter

Se você precisar mudar um valor, terá que procurar em todo o código.

3. Fácil de Cometer Erros

O mesmo número pode ter significados diferentes em lugares distintos.


A Solução: Constantes Nomeadas

O PEP 8 recomenda usar UPPER_SNAKE_CASE para constantes. Além disso, boas práticas de código limpo recomendam substituir números mágicos por constantes nomeadas para melhor legibilidade.

Exemplo Prático

❌ Evite assim:

PYTHON
def calcular_desconto(preco):
    return preco * 0.15
Clique para expandir e ver mais

✅ Faça assim:

PYTHON
TAXA_DESCONTO = 0.15

def calcular_desconto(preco):
    return preco * TAXA_DESCONTO
Clique para expandir e ver mais

Outro exemplo:

❌ Evite assim:

PYTHON
# O que é 86400? Quanto tempo é isso?
tempo_em_segundos = 86400
Clique para expandir e ver mais

✅ Faça assim:

PYTHON
SEGUNDOS_POR_DIA = 86400

tempo_em_segundos = SEGUNDOS_POR_DIA
Clique para expandir e ver mais

O Zen do Python

O PEP 20 (O Zen do Python) nos ensina:

“Explícito é melhor que implícito.”

“Legibilidade conta.”

Constantes nomeadas tornam o código explícito e legível!


Quando NÃO Precisa de Constantes

Nem todo número é “mágico”. Esses são aceitáveis:

Exemplo onde constantes NÃO são necessárias:

PYTHON
# Isso está certo - o significado é óbvio
for index in range(10):
    print(index)

if len(itens) > 0:
    return itens[0]

resultado = valor * 2  # Dobrar é claro
Clique para expandir e ver mais

Conclusão

Substituir números mágicos por constantes nomeadas é um hábito simples que melhora muito a qualidade do seu código. Sua equipe (e seu eu do futuro) agradecerão!

Lembre-se: Seu código é lido muito mais vezes do que é escrito. Vale a pena torná-lo claro.


Referências

Iniciar busca

Digite palavras-chave para buscar

↑↓
ESC
⌘K Atalho