python代碼檢查工具(靜態代碼審查)


python靜態代碼檢查

我們知道python是一門腳本語言,不像C#/Java等編譯型語言可以在編譯階段就報出代碼錯誤,腳本語言往往需要在運行期執行到這段代碼時才會拋出代碼錯誤。

那么在實際商業項目中使用python開發,我們是怎樣做靜態代碼檢查的呢?

首先在我們項目組推薦使用vscode做為python開發工具,本文我介紹下我們做的python代碼靜態審查來減少運行期的py腳本錯誤。

  1. 安裝vscode插件:save and run,下載地址:Save and Run - Visual Studio Marketplace
  2. 通過pip install pyflakes 這個模塊,安裝后就有pyflakes.exe
  3. 在vscode中配置文件(settings.json)中增加這幾行配置
	"saveAndRun": {
        "commands": [
            {
                "match":"\\.py$",
                "isAsync":true,
                "cmd":"python C:\\Python27\\Scripts\\pyflakes.exe ${file}"
            }
        ]
	},
  1. 在vscode中編寫完py腳本,在保存時就會提示你當前文件是否有腳本錯誤了。

驗證一下

語法報錯

代碼縮進在python中是語法,如果在純文本中編輯代碼或復制粘貼的代碼,很大概率會出現縮進不對從而在運行時報錯,通過上面的設置后在從保存py文件時就會報錯出來。

PS E:\Code\python_study> python C:\Python27\Scripts\pyflakes.exe e:\Code\python_study\hello_netease.py
e:\Code\python_study\hello_netease.py:10:1: unexpected indent
        print ("hello netease")
^

python用法報錯

比如這個py文件中有一處錯誤,在保存py時就會提示你腳本有錯誤,這是因為global變量不能在初始化時賦值。

e:\Code\python_study\true-false邏輯控制符.py:9:17: invalid syntax
global log_func = 1
                ^

其它插件

可選插件:Pylance - Visual Studio Marketplace


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM