Formatar código Python

Cole um script Python indentado com tabulações ou com um número irregular de espaços: a ferramenta normaliza a indentação para 4 espaços consistentes por nível, sem nunca alterar a estrutura lógica do código.

Atenção: em Python, a indentação faz parte da sintaxe. Este formatador apenas normaliza a largura das indentações existentes (como o autopep8 --select=E1); ele não reorganiza linhas nem expressões como faria uma ferramenta completa, a exemplo do black.

Exemplo:

Como funciona

A ferramenta detecta a unidade de indentação usada no seu script (por exemplo, 2 espaços, 3 espaços ou tabulações convertidas em 4 espaços cada) calculando o maior divisor comum dos comprimentos de indentação observados nas linhas não vazias. Cada linha é então reescrita com exatamente 4 espaços por nível relativo detectado, sem alterar seu conteúdo nem sua ordem. As linhas vazias e os espaços no fim das linhas são removidos.

O comportamento do script pode mudar depois da formatação?

Não, desde que a indentação original fosse consistente (mesma unidade usada em todo o código): apenas a largura visual da indentação muda, nunca o nível real de aninhamento dos blocos. Se o arquivo de origem já misturava indentações inconsistentes (por exemplo, 2 espaços em um ponto e 3 em outro), a detecção automática pode errar: sempre revise o resultado antes de executá-lo.

As tabulações são bem suportadas?

Sim: cada tabulação no início de uma linha é convertida em 4 espaços antes da análise, o que permite tratar um script indentado com tabulações exatamente como um script indentado com 4 espaços.

A formatação é executada 100% localmente no seu navegador: seu código Python nunca é enviado a um servidor.