python第三方插件之mypy(对python程序进行静态检查)


前言

① mypy 工具 是 Python 中的静态类型检查器

②写完带有类型提示的代码之后,先别运行行,用  mypy 命令来检查下你的代码,如果有错误,会提示你,这让 Python 的类型提示有了真正的作用。

③后续开发的过程中可以强制 mypy 工具检查无误后才能上线,借此提高代码的可读性和可维护性。

④mypy官方文档:https://mypy.readthedocs.io/en/stable/

安装

pip install mypy

安装完成之后,在cmd中校验是否安装成功:

示例

①新建一个demo.py文件,内容如下:

使用mypy工具对代码进行静态类型检查:

果然,mypy工具发现了三处错误,并一一提示。

②如果不希望检查某一行,可以在代码注释中加上 # type: ignore 

python常用的内置类型

配置文件

①mypy工具将依次查找当前目录下的配置文件: mypy.ini , .mypy.ini , pyproject.toml , setup.cfg 

②如果在上述配置文件中找不到,则依次寻找下面的配置文件: $XDG_CONFIG_HOME/mypy/config , ~/.config/mypy/config , ~/.mypy.ini 

③另外,还可以使用 --config-file​ 指定配置文件。

④典型的mypy.ini配置文件如下:

# Global options:

[mypy]
python_version = 3.7
warn_return_any = True
warn_unused_configs = True

# Per-module options:

[mypy-mycode.foo.*]
disallow_untyped_defs = True

[mypy-mycode.bar]
warn_return_any = False

[mypy-somelibrary]
ignore_missing_imports = True

⑤常见配置项

files 逗号分隔的路径列表,如果命令行上没有给出,则应由 mypy 检查,支持递归。

exclude 应忽略检查的文件名、目录名和路径

ignore_missing_imports 禁止有关无法解析的导入的错误消息。

disallow_untyped_defs 不允许定义没有类型注释或类型注释不完整的函数。

plugins 逗号分隔的 mypy 插件列表


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM