本文旨在補充《超圖解Python程式設計入門》2-9頁的PEP 8寫作風格,以及Visual Studio Code程式編輯器的autopep8延伸模組設定說明。
引用套件和模組等程式庫的import敘述
import敘述要放在程式檔開頭,而且引用不同套件的敘述應該單獨寫成一行:
若是引用套件裡的模組,則可以用逗號分隔模組名稱;不建議用星號引用套件裡的所有模組,這樣看起來語法含糊不清。
有些人主張import敘述應該要依照套件的字母順序排列,例如:
空格與空行
不同函式定義之間,建議用兩個空行隔開:
程式敘述之間可用一個空行,代表將程式碼分成不同群組,方便閱讀:
在函式的參數定義敘述中,參數之間建議用空格分開,參數設定值的等號兩邊則不要加空格。
一般的“=”(等號,設定值)敘述,則建議加上空格:
類別定義和其他程式敘述之間,建議用兩個空行分隔,但類別裡面的方法(函式),則應該只用一個空行區隔。
存檔時透過autopep8自動執行格式化
上述的import敘述整理、函式和類別之間的空行、程式敘述的空格…等格式化設定,可交給VS code的autopep8延伸模組自動完成。設定步驟如下:
- 選擇「檔案→喜好設定→設定」,搜尋關鍵字“python formatting”;往下捲動到Python > Formatting: Provider(直譯為「格式化:提供者」),確認是autopep8。
- 用關鍵字搜尋“formatonsave”(存檔時格式化)設置選項,將它勾選。
如此,每次存檔時,VS Code就會自動執行autopep8自動調整Python原始碼的編排格式。
自動存檔設定
VS Code編輯器具有自動存檔機制,選擇「檔案→自動儲存」指令,它將每隔1秒鐘(1000毫秒)自動存檔。
若要調整自動存檔的間隔時間,或者修改存檔的觸發時機,請選擇「檔案→喜好設定→設定」,搜尋關鍵字“自動儲存”,從下圖的下拉式選單選擇onWindowChange(視窗切換,例如:前景視窗從VS Code切換到瀏覽器)或者onFocusChange(焦點改變,例如:在VS Code編輯器中切換到不同分割畫面),預設值是aferDelay(延遲一段時間後)。