在 Microsoft Fabric 筆記本中格式化程式碼

撰寫 Python 筆記本或 Apache Spark 工作定義時,採用良好樣式和慣例有許多優點。 藉由一致地格式化程式碼,您可以:

  • 讓程式碼更易於讀取。
  • 提高程式碼的可維護性。
  • 更快速地進行程式碼檢閱。
  • 執行更精確的差異比對,以偵測版本之間的變更。

具體而言,本文說明如何延伸 Fabric 筆記本,以使用符合 PEP 8 規範的程式碼格式器。

注意

PEP 是 Python 增強提案的縮略字。 PEP 8 是描述 Python 程式碼編碼慣例的樣式指引。

延伸 Fabric 筆記本

您可以使用筆記本延伸項目來延伸 Fabric 筆記本。 筆記本延伸項目是一種軟體元件,可將新功能新增至筆記本介面。 您會將延伸項目安裝為程式庫,然後將其設定為符合您的特定需求。

本文會考慮兩個延伸項目,可用來格式化 Fabric 筆記本中的 Python 程式碼。 這兩個延伸項目都可從 GitHub 免費取得。

  • black Python 程式碼格式器延伸項目。
  • jupyter-black 格式器延伸項目,您也可以用來在 Jupyter Notebook 或 Jupyter Lab 中自動格式化程式碼。

設定程式碼格式器延伸項目

在 Fabric 筆記本中設定程式碼格式器延伸項目的方法有兩種。 第一種方法涉及工作區設定,而第二種方法則涉及內嵌安裝。 安裝延伸項目之後,您可以啟用程式碼格式化功能。

工作區設定

使用工作區設定來設定 Fabric 工作區的工作環境。 若要讓您的程式庫可用於工作區中的任何筆記本和 Spark 工作定義,您可以建立環境、在其中安裝程式庫,然後您的工作區管理員可以將環境附加為工作區的預設值。 因此,當在工作區的預設環境中安裝程式碼格式器延伸項目時,工作區中的所有筆記本都可以從中受益。

若要了解有關環境的詳細資訊,請參閱<在 Microsoft Fabric 中建立、設定及使用環境>。

內嵌安裝

當您想要為特定筆記本 (而不是工作區中的所有筆記本) 安裝程式庫時,請使用內嵌安裝方法。 當您想要一個不影響工作區中其他筆記本的臨時或快速解決方案時,此方法就十分方便。

若要了解如何執行內嵌安裝,請參閱內嵌安裝

在下列範例中,%pip 命令可用來在驅動程式和執行程式節點上安裝最新版的 Jupyter-black 延伸項目。

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

啟用程式碼格式化

安裝程式碼格式延伸項目之後,您必須啟用筆記本的程式碼格式化功能。 您可以藉由載入延伸項目來執行此操作,這可透過兩種方式來完成。

使用 %load_ext magic 命令。

# Load the jupyter-black extension
%load_ext jupyter_black

或者,使用程式設計 API 來使用載入延伸項目。

import jupyter_black
jupyter_black.load()

提示

若要確保所有筆記本都啟用程式碼格式化功能 (這在企業開發案例中很有助益),請在範本筆記本中啟用格式設定。

格式化程式碼

若要格式化程式碼,請選取您想要格式化的程式碼,然後按 Shift+Enter

下列 11 行程式碼尚未正確格式化。

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

套用格式設定之後,延伸項目會將指令減少到只有五行。 程式碼現在採用良好的樣式和慣例。

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

若要了解有關 Fabric 筆記本的詳細資訊,請參閱下列文章。