当前位置: 首页>編程日記>正文

python代码库-这7个开源的Python库,让你轻松代码分析

python代码库-这7个开源的Python库,让你轻松代码分析

原标题:这7个开源的Python库,让你轻松代码分析

开源最前线(ID:OpenSourceTop) 猿妹编译

来源:https://opensource.com/article/18/7/7-python-libraries-more-maintainable-code

当软件项目进入"维护模式”时,很容易把从一开始就建立的代码可读性和编码标准抛开,但是,在代码库中保持一致的样式和测试标准是减少维护负担的重要部分,这样可以确保未来的开发人员能够快速了解最新的项目情况

维持项目可维护性的一个好方法是使用外部库来检查您的代码运行状况。这些是我们最喜欢的一些用于linting代码的库(检查PEP 8和其他样式错误),强制执行一致的样式,以及测试覆盖率的库。

检查代码规范

PEP8 是Python官方推出编码约定,它为行长度,缩进,多行表达式和命名约定等内容制定了一系列规则,主要是为了保证 Python 编码的风格一致,提高代码的可读性。

1. Pylint

Pylint是一个检查PEP 8规范违规和常见错误的库。它能与几个流行的编辑器和IDE很好地集成,也可以从命令行运行。

要安装,请运行pip install pylint。要从命令行使用Pylint,请运行pylint [options] path/to/dir或pylint [options] path/to/module.py。Pylint就会输出有关样式违规和其他错误的警告。开发者可以根据根据自己偏好、习惯修改pylintrc这个模板。(项目地址:https://www.pylint.org/)

2. Flake8

Flake8 是由Python官方发布的一款辅助检测Python代码是否规范的工具,相对于目前热度比较高的Pylint来说,Flake8检查规则灵活,支持集成额外插件,扩展性强。

要使用Flake8,请运行pip install flake8。然后运行flake8 [options] path/to/dir或flake8 [options] path/to/module.py查看其错误和警告。

与Pylint一样,Flake8允许对配置文件检查的内容进行一些自定义。它有非常清晰的文档,包括一些有用的repo,可以自动检查代码。

Flake8同样可与流行的编辑器和IDE集成,例如,Sublime Text的Flake8插件。(详情:https://github.com/PyCQA/flake8)

3. Isort

isort 可自动对 Python 的 import 语句进行排序和分段。可将大量的 import 结构转成非常适合阅读的排版。提供一个命令行工具、Python 库和 Kate 插件。

安装isort pip install isort,然后运行isort path/to/module.py。文档中提供了更多配置选项。例如,开发者可以配置 isort处理.isort.cfg文件中一个库的多行导入。

与Flake8和Pylint一样,isort也能够与流行的编辑器和IDE集成。

代码格式化

4. Autopep8

Autopep8是一个将Python代码自动排版为PEP8风格的小工具。它使用pep8工具来决定代码中的哪部分需要被排版。Autopep8可以修复大部分pep8工具中报告的排版问题。

要安装,请运行pip install --upgrade autopep8。要重新格式化代码,请运行autopep8 --in-place --aggressive --aggressive 。(项目地址:https://github.com/hhatto/autopep8)

5. Yapf

Yapf是重新格式化代码的另一种选择,它带有自己的配置选项列表。它与autopep8的不同之处在于它不仅仅解决了PEP 8违规问题。它还重新格式化了没有违反PEP 8的代码,但没有一致地设置样式。

要安装,请运行pip install yapf。要重新格式化代码,请运行yapf [options] path/to/dir或yapf [options] path/to/module.py。还有一个完整的自定义选项列表。(项目地址:https://github.com/google/yapf)

6. Black

Black,号称不妥协的代码格式化工具,因为它检测到不符合规范的代码风格直接就帮你全部格式化好,根本不需要你确定,直接替你做好决定。

Black 支持 Python 3.6 以上的版本,但可以格式化 Python 2 代码。如果要安装Black,请运行pip install black。要格式化代码,请运行:black path/to/dir或black path/to/module.py。

代码覆盖率

如果你正在写测试,你需要对代码库提交的新代码进行测试,并且不会降低你的测试覆盖率。虽然测试覆盖率的百分比不是衡量测试有效性和充分性的唯一指标,但它是确保项目中遵循基本测试标准的一种方法。为了测量测试覆盖率,我们建议使用 Coverage。

7. Coverage

Coverage 有多种选项可用于向用户报告测试覆盖率,包括将结果输出到控制台或 HTML 页面,并指示哪些行号缺少测试覆盖率。你可以设置配置文件以自定义Coverage 检查的内容并使其更容易运行。

持续集成工具

持续集成(CI)是您可以运行的一系列过程,用于在合并和部署代码之前自动检查linter错误和测试覆盖率最小值。有许多免费或付费的工具可以自动执行此过程,完整的演练超出了本文的范围。但是,因为设置CI过程是将块移除到更易读和可维护的代码的重要步骤,所以您应该研究一般的持续集成工具,特别是 Travis CI 和 Jenkins

●编号470,输入编号直达本文返回搜狐,查看更多

责任编辑:


https://www.fengoutiyan.com/post/15117.html

相关文章:

  • github python
  • 代码python
  • python类库
  • python库大全
  • qpython
  • python4
  • python编程100例
  • python怎么用
  • 鏡像模式如何設置在哪,圖片鏡像操作
  • 什么軟件可以把圖片鏡像翻轉,C#圖片處理 解決左右鏡像相反(旋轉圖片)
  • 手機照片鏡像翻轉,C#圖像鏡像
  • 視頻鏡像翻轉軟件,python圖片鏡像翻轉_python中鏡像實現方法
  • 什么軟件可以把圖片鏡像翻轉,利用PS實現圖片的鏡像處理
  • 照片鏡像翻轉app,java實現圖片鏡像翻轉
  • 什么軟件可以把圖片鏡像翻轉,python圖片鏡像翻轉_python圖像處理之鏡像實現方法
  • matlab下載,matlab如何鏡像處理圖片,matlab實現圖像鏡像
  • 圖片鏡像翻轉,MATLAB:鏡像圖片
  • 鏡像翻轉圖片的軟件,圖像處理:實現圖片鏡像(基于python)
  • canvas可畫,JavaScript - canvas - 鏡像圖片
  • 圖片鏡像翻轉,UGUI優化:使用鏡像圖片
  • Codeforces,CodeForces 1253C
  • MySQL下載安裝,Mysql ERROR: 1253 解決方法
  • 勝利大逃亡英雄逃亡方案,HDU - 1253 勝利大逃亡 BFS
  • 大一c語言期末考試試題及答案匯總,電大計算機C語言1253,1253《C語言程序設計》電大期末精彩試題及其問題詳解
  • lu求解線性方程組,P1253 [yLOI2018] 扶蘇的問題 (線段樹)
  • c語言程序設計基礎題庫,1253號C語言程序設計試題,2016年1月試卷號1253C語言程序設計A.pdf
  • 信奧賽一本通官網,【信奧賽一本通】1253:抓住那頭牛(詳細代碼)
  • c語言程序設計1253,1253c語言程序設計a(2010年1月)
  • 勝利大逃亡英雄逃亡方案,BFS——1253 勝利大逃亡
  • 直流電壓測量模塊,IM1253B交直流電能計量模塊(艾銳達光電)
  • c語言程序設計第三版課后答案,【渝粵題庫】國家開放大學2021春1253C語言程序設計答案
  • 18轉換為二進制,1253. 將數字轉換為16進制
  • light-emitting diode,LightOJ-1253 Misere Nim
  • masterroyale魔改版,1253 Dungeon Master
  • codeformer官網中文版,codeforces.1253 B
  • c語言程序設計考研真題及答案,2020C語言程序設計1253,1253計算機科學與技術專業C語言程序設計A科目2020年09月國家開 放大學(中央廣播電視大學)
  • c語言程序設計基礎題庫,1253本科2016c語言程序設計試題,1253電大《C語言程序設計A》試題和答案200901
  • 肇事逃逸車輛無法聯系到車主怎么辦,1253尋找肇事司機