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

修復錯誤的最佳方式是壓根兒不犯錯。靜態代碼格式分析工具(也稱作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的能力。

主站蜘蛛池模板: 汝南县| 儋州市| 永顺县| 福建省| 涟源市| 济阳县| 思茅市| 郧西县| 门源| 衡东县| 鸡泽县| 柳江县| 饶阳县| 许昌县| 宁南县| 子洲县| 曲沃县| 麻城市| 景东| 仪征市| 孟州市| 罗江县| 隆化县| 南召县| 宝丰县| 长武县| 共和县| 邢台县| 民勤县| 游戏| 临清市| 石门县| 广宁县| 阳信县| 余姚市| 任丘市| 调兵山市| 潜江市| 荥阳市| 义马市| 沈丘县|