python代碼檢查工具pylint 讓你的python更規范
2020-02-23 04:48:01
供稿:網友
1、pylint是什么?
Pylint 是一個 Python 代碼分析工具,它分析 Python 代碼中的錯誤,查找不符合代碼風格標準(Pylint 默認使用的代碼風格是 PEP 8,具體信息,請參閱參考資料)和有潛在問題的代碼。目前 Pylint 的最新版本是 pylint-0.18.1。
Pylint 是一個 Python 工具,除了平常代碼分析工具的作用之外,它提供了更多的功能:如檢查一行代碼的長度,變量名是否符合命名標準,一個聲明過的接口是否被真正實現等等。
Pylint 的一個很大的好處是它的高可配置性,高可定制性,并且可以很容易寫小插件來添加功能。
如果運行兩次 Pylint,它會同時顯示出當前和上次的運行結果,從而可以看出代碼質量是否得到了改進。
目前在 eclipse 的 pydev 插件中也集成了 Pylint。
pylint是一個Python代碼風格的檢查工具, 它依據的標準是Guido van Rossum的PEP8。
pylint類似于PyChecker, 但提供了更多的功能, 如檢查代碼行的長度, 檢查變量命名是否符合編碼規范, 或檢查聲明的接口是否被真正的實現, 完整的檢查功能請參見http://www.logilab.org/card/pylintfeatures。
pylint的最大優勢在于其高度的可配置化和可定制化,你可以很容易地寫一個小插件添加個人功能。
安裝方法:pip install pylint
參考鏈接:
http://www.ibm.com/developerworks/cn/aix/library/au-cleancode/index.html
http://www.douban.com/note/46830857/
http://zh.wikipedia.org/wiki/Pylint
2、為什么使用pylint?
為了寫出好代碼。什么是好代碼?符合團隊編碼習慣的代碼:統一的命名,結構。
它的類似產品是什么?PyChecker
你還有啥補充?
3、 怎么使用pylint?
基礎使用:
通過三種代碼來進行測時,得分從1,不斷的根據pylint的提示進行重構,最終得到10分。
v1_fetch.py:
代碼如下:
#coding:utf-8
import urllib
import time
def a(url):
content = urllib.urlopen(url).read()
f = open('tmp%s.html' % str(time.time()), 'w')
f.write(content)
f.close()
def main(urls):
for url in urls:
a(url)
if __name__ == '__main__':
urls = ['http://www.baidu.com','http://www.sohu.com']
main(urls)
修改命名:
v2_fetch.py:
代碼如下:
#coding:utf-8
import urllib
import time
def fetch(url):
content = urllib.urlopen(url).read()
f_html = open('tmp%s.html' % str(time.time()), 'w')
f_html.write(content)
f_html.close()
def main(urls):
for url in urls:
fetch(url)
if __name__ == '__main__':
from_urls = ['http://www.baidu.com','http://www.sohu.com']
main(from_urls)
再次修改:
v3_fetch.py:
代碼如下:
#coding:utf-8
'''
a test function module
'''
import urllib
import time