Partilhar via


Formatar código em blocos de anotações do Microsoft Fabric

Há muitos benefícios em adotar um bom estilo e convenções quando você escreve um notebook Python ou uma definição de trabalho do Apache Spark. Ao formatar seu código de forma consistente, você pode:

  • Facilite a leitura do código.
  • Aumenta a capacidade de manutenção do código.
  • Realize revisões de código mais rápidas.
  • Execute diffs mais precisos, que detetam alterações entre versões.

Especificamente, este artigo descreve como você pode estender um bloco de anotações de malha para usar um formatador de código compatível com PEP 8.

Nota

PEP é a sigla para Python Enhancement Proposals. PEP 8 é um guia de estilo que descreve convenções de codificação para código Python.

Estender blocos de anotações de malha

Você pode estender um bloco de anotações de malha usando uma extensão de bloco de anotações. Uma extensão de notebook é um componente de software que adiciona novas funcionalidades à interface do notebook. Você instala uma extensão como uma biblioteca e, em seguida, configura-a para atender às suas necessidades específicas.

Este artigo considera duas extensões que você pode usar para formatar código Python em um bloco de anotações de malha. Ambas as extensões estão disponíveis gratuitamente no GitHub.

Configurar uma extensão de formatador de código

Há dois métodos para configurar uma extensão de formatador de código em um bloco de anotações de malha. O primeiro método envolve configurações de espaço de trabalho, enquanto o segundo método envolve instalação em linha. Ativar a formatação de código depois de instalar a extensão.

Definições de área de trabalho

Use as configurações do espaço de trabalho para configurar o ambiente de trabalho para um espaço de trabalho do Fabric. Para disponibilizar suas bibliotecas para uso em quaisquer blocos de anotações e definições de trabalho do Spark no espaço de trabalho, você pode criar o ambiente, instalar as bibliotecas nele e, em seguida, o administrador do espaço de trabalho pode anexar o ambiente como padrão para o espaço de trabalho. Portanto, quando uma extensão de formatador de código é instalada no ambiente padrão do espaço de trabalho, todos os blocos de anotações dentro do espaço de trabalho podem se beneficiar dele.

Para obter mais informações sobre ambientes, consulte criar, configurar e usar um ambiente no Microsoft Fabric.

Instalação em linha

Use o método de instalação em linha quando quiser instalar uma biblioteca para um bloco de anotações específico, em vez de todos os blocos de anotações em um espaço de trabalho. Essa abordagem é conveniente quando você deseja uma solução temporária ou rápida que não deve afetar outros blocos de anotações no espaço de trabalho.

Para saber como executar uma instalação em linha, consulte Instalação em linha.

No exemplo a seguir, o comando %pip é usado para instalar a versão mais recente da extensão Jupyter-black nos nós do driver e do executor.

# Install the latest version by using %pip command
# It will be available on both driver and executor nodes
%pip install jupyter-black

Ativar formatação de código

Depois de instalar a extensão de formatação de código, você deve habilitar a formatação de código para o bloco de anotações. Você faz isso carregando a extensão, o que pode ser feito de duas maneiras.

Use o %load_ext comando magic.

# Load the jupyter-black extension
%load_ext jupyter_black

Ou, use a extensão de carga usando a API de programação.

import jupyter_black
jupyter_black.load()

Gorjeta

Para garantir que todos os blocos de anotações habilitem a formatação de código, o que pode ser útil em cenários de desenvolvimento empresarial, habilite a formatação em um bloco de anotações de modelo.

Código de formato

Para formatar o código, selecione as linhas de código que deseja formatar e pressione Shift+Enter.

As 11 linhas de código a seguir ainda não estão formatadas corretamente.

def unique(list_input):
    list_set = set(list_input
    )
    unique_list = (list(
        list_set
        )
    )
    for x in unique_list:
        print(
            x
        )

Após a formatação ter sido aplicada, a extensão reduziu o script para apenas cinco linhas. O código adota agora um bom estilo e convenções.

def unique(list_input):
    list_set = set(list_input)
    unique_list = list(list_set)
    for x in unique_list:
        print(x)    

Para obter mais informações sobre blocos de anotações de malha, consulte os seguintes artigos.