官术网_书友最值得收藏!

修復錯誤的最佳方式是壓根兒不犯錯。靜態代碼格式分析工具(也稱作linter)是通過分析源代碼來報告潛在錯誤的一類程序。linter這個名字本來是指干衣機的棉絨收集器收集的小纖維和碎屑。盡管linter不能捕獲所有錯誤,但靜態分析(在不運行的情況下檢查源代碼)可以識別由錯別字引起的拼寫錯誤(第11章將探討如何使用類型提示進行靜態分析)。很多編輯器和集成開發環境(IDE)集成了一個在后臺運行的linter,可以實時指出錯誤,如圖1-2所示。

圖1-2 linter指出存在一個未聲明的變量。從上到下的編輯器分別為Mu、PyCharm和Sublime Text

linter提供的近乎實時的通知極大地提高了編程效率。如果沒有它,那么你必須運行程序,不得不眼睜睜地看著它崩潰,同時,閱讀異常信息,在源代碼中找到指定行,修復拼寫錯誤。如果你犯了多個拼寫錯誤,上述流程只能每次檢查出一個,而linter可以一次找到多個錯誤。它會在編輯器中以非常直觀的形式顯示錯誤,幫你輕易找到出錯位置。

你的編輯器或IDE也許不提供linter,但如果它提供插件機制,那幾乎肯定有一個linter插件。這些插件通常使用一個名為Pyflakes的模塊或其他模塊進行分析。你可以安裝Pyflakes,或者運行pip install --user pyflakes,它值得一試。

注意 在Windows上,你可以運行命令python和pip。但是在macOS和Linux上,這些命令是指向Python 2的,應該使用python3和pip3替代。請牢記,本書中出現的python和pip都是如此。

IDLE是Python自帶的IDE,它既沒有預裝linter,也不具備通過插件機制安裝linter的能力。

主站蜘蛛池模板: 神池县| 梅州市| 肥东县| 荔波县| 虞城县| 永春县| 河南省| 深圳市| 抚顺市| 天水市| 安宁市| 卓资县| 城口县| 商都县| 贵港市| 五峰| 平乐县| 嵊州市| 喀什市| 呼图壁县| 河池市| 安图县| 农安县| 柳江县| 酉阳| 侯马市| 湛江市| 定日县| 鹿泉市| 屏山县| 乐清市| 白河县| 集贤县| 镇江市| 彰武县| 壤塘县| 怀集县| 和平区| 大安市| 无极县| 雷波县|