Saltar al contenido
Dicas de Sintaxe

PEP 8 no Python 3.12: como escrever blocos match/case legíveis

O match/case do Python 3.10+ é poderoso, mas mal indentado fica ilegível. A PEP 8 recomenda indentar cada case um nível dentro de match, manter as linhas em até

2026-11-02 · Dicas de Sintaxe · PYTHON

Dica da semana

O match/case do Python 3.10+ é poderoso, mas mal indentado fica ilegível. A PEP 8 recomenda indentar cada case um nível dentro de match, manter as linhas em até 79 caracteres e usar guardas if curtas.

match command.split():
    case ["go", direction] if direction in {"north", "south"}:
        move(direction)
    case ["quit" | "exit"]:
        shutdown()
    case _:
        print("Comando desconocido")

Regras rápidas

  • Um case por padrão; evite guardas com mais de uma condição.
  • Use | para agrupar alternativas em vez de repetir ramos.
  • Termine sempre com case _: para não ignorar entradas inesperadas.

Cole este trecho no formatador com o botão acima e confira a indentação na hora.

Testar trecho no formatador

Ver guia de correção de erros: Como corrigir IndentationError em Python 3.12

Dicas relacionadas