標籤: Pycharm

autopep8 – pep8 auto styling tool 如何整合到Pycharm

autopep8 – pep8 auto styling tool 如何整合到Pycharm

身為一個半路出家的python幼幼班,常常為了轉換語言,而在命名、排版上與直覺發生出入

python有一個python pep8 style(相關介紹)

為了盡量符合pep8的style,這次我先決定套用工具幫我自動排版,希望等到這種排版看久了,自然也會內化吧orz

首先在cmd上輸入:(註:請先使用系統管理員執行cmd,否則會權限不足)

pip install autopep8

 

接著開啟pycharm,點選上方的導覽列file->settings 切換到tools / external tools的頁籤

接著新增一個external tools,參考以下輸入:

Name, Description都可以依自己喜好設定,tool settings這邊請照以下輸入

program: autopep8
parameters: –in-place –aggressive –aggressive $FilePath$ (–in-place代表是直接對該檔案調整,依測試是不可逆的)
working directory: $ProjectFileDir$

以上希望知道參數說明,可以自己打autopep8 -h 研讀


 

其中output filters來新增一組regular exp

範例:$FILE_PATH$\:$LINE$\:$COLUMN$\:.*

以上都設定好以後,我們在程式原始檔上,右鍵:external tools,這時會發現有autopep8的選項可以點

autopep8 –in-place –aggressive –aggressive C:\Users\paul\Desktop\WorkFolder\collection_proxy\data_transfer.py

 

我可以看到console其實他背後就是對指定檔案下以上指令,因此自己也可以這樣去下或批次調整,若希望不要改到原始檔案的話,請記得拿掉–in-place指令

想自行輸出的話,可以參考類似以下語法

autopep8 –aggressive –aggressive C:\Users\paul\Desktop\WorkFolder\meso_collection\meso_collection_proxy\data_model\exchange\exchange_data.py > ./exchange_data_new.py

Before

After

其實格式化後,至少我離python的常用排版更貼近了一些,至於程式可讀性這種東西,我覺得還是見仁見智,必竟程式碼閱讀主要是團隊裡的人看的懂,後續接手維護的人員看的懂最重要,因此程式最重要的還是首重命名,再來排版只要順眼,當然團隊中每個人都可能有自己順眼的方式,但要要找到一個共識,其實沒有絕對的標準答案的