Logotipo preto

Do projeto README:

Usando Preto, você concorda em ceder o controle sobre as minúcias da formatação manual. Em troca, Preto oferece velocidade, determinismo e liberdade do estilo pycodestyle sobre a formatação. Você economizará tempo e energia mental para assuntos mais importantes.

O preto pode reformatar seu arquivo inteiro no lugar, de acordo com o estilo do código em preto. Isso ajuda seu cérebro a se concentrar no problema que você deseja resolver e a codificar soluções, em vez de se distrair com a estrutura de código e as pequenas diferenças estilísticas.

Então, vamos ver como usá-lo.

Instalar preto

O preto pode ser instalado executando pip install black. Requer o Python 3.6.0+ para ser executado. Depois que o Black estiver instalado, você terá uma nova ferramenta de linha de comando chamada black disponível no seu shell e estará pronto para começar!

Para começar imediatamente com padrões sensíveis, escolha o arquivo python que deseja formatar e depois escreva black filename.py no terminal. Então o Black formatará seu arquivo python.

Agora vamos ver o que o preto pode nos ajudar a fazer.

Formatar um único arquivo

Vejamos este exemplo simples: aqui estão minhas duas funções python no meu arquivo python chamadas sample_code.py.

1 OKkCLUmuspv8IHiU25NVTw
sample_code.py

Você pode usar black sample_code.py no terminal para alterar o formato. Depois de executar o Black, você verá a seguinte saída:

d

Então você pode abrir sample_code.py para ver o código python formatado:

e

O código Python agora está formatado e é mais legível.

Formatar vários arquivos

Para formatar mais de um arquivo python, escreva black folder_name/ no terminal.

1*VLyk0 7wCnKFOEYPRBpABg

f
Formate todos os arquivos python dentro da pasta

Três arquivos python dentro da pasta denominada python_with_black foram reformatados.

Verificando arquivos para formatação

Se você não deseja que o Black altere seu arquivo, mas deseja saber se o Black acha que um arquivo deve ser alterado, você pode usar um dos seguintes comandos:

black --check .: Isso verifica quais arquivos python podem ser formatados na pasta atual (mas na verdade não modifica os arquivos python).

g
Verifique o (s) arquivo (s) para formatar

black --check --diff file_name.py : Mostra o que precisa ser feito no arquivo, mas não o modifica.

h
verificar diff após a formatação

Alterar número de caracteres por linha

Observe que o padrão preto é 88 caracteres para o comprimento da linha, mas você pode alterá-lo usando a opção “-l” ou “- -line-length”.

Por exemplo, para mudar para 60 caracteres: black -l 60 python_file.py .

Para usuários de notebooks Jupyter, você ainda pode formatar automaticamente seu código python com esta extensão simples chamada Jupyter Black. Essa extensão reformata / pré-purifica o código na célula de código de um notebook Preto.

A extensão Jupyter Black fornece

  • Um botão da barra de ferramentas.
  • Um atalho de teclado para reformatar a célula de código atual (padrão: Ctrl-B).
  • Um atalho de teclado para reformatar células de código inteiras (padrão: Ctrl-Shift-B).

Instale o Jupyter Black

Primeiro, verifique se você instalou jupyter-contrib-nbextensions e Preto, execute os seguintes comandos.

jupyter nbextension install https://github.com/drillan/jupyter-black/archive/master.zip — user

Ative a extensão executando:

jupyter nbextension enable jupyter-black-master/jupyter-black

Agora você pode começar a formatar seu código python em cada célula do notebook.

Primeiro, selecione a célula do notebook que você deseja formatar seu código python e clique no botão de extensão chamado Black.

i
Antes de usar o Jupyter Black

Em seguida, clique no botão Jupyter Black:

j
Botão preto de Jupyter

k
Depois de usar o Jupyter Black

Você pode integrar o Black aos seus editores favoritos. Atualmente, o Black suporta PyCharm / IntelliJ IDEA, Wing IDE, Vim, Código do Visual Studio, Sublime Text 3, Atom / Nuclide, Kakoune e Thonny. Siga as instruções aqui para integrar o preto ao seu editor favorito.

Se você quiser saber mais sobre o preto, recomendo assistir ao Discussão em PyCon 2019 de Łukasz Langa.

Se você aprendeu algo novo ou gostou de ler este artigo, compartilhe-o para que outros possam vê-lo. Até lá, até o próximo post! Também posso ser encontrado no Twitter @Davis_McDavid.