您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:使用mypy对python程序进行静态检查

51自学网 2022-02-21 10:46:59
  python
这篇教程使用mypy对python程序进行静态检查写得很实用,希望能帮到您。

前言

在此之前,我认为 Python 的类型提示就是一个花瓶,看起来好看,但并没有实质的作用,因为即使类型写错了,或者传错了,程序仍然可以运行,直到我发现了 mypy 这个工具。今天就来聊一聊 mypy。

mypy 是 Python 中的静态类型检查器。写完带有类型提示的代码之后,先别运行行,用 mypy 命令来检查下你的代码,如果有错误,会提示你,这让 Python 的类型提示有了真正的作用。后续开发的过程中可以强制 mypy 检查无误后才能上线,借此提高代码的可读性和可维护性。

嗯,很实用,不是吗?下面分享一下如何使用 mypy。

1、安装

这个很简单了,pip install mypy 就搞定了。

2、执行

假如有这样一个 Python 程序,名称叫 demo1.py,内容如下:

def greeting(name: str) -> str: #这里提示有问题
print (f'Hello { name }')

x: str = 'xxx'
y: int = "yyy" #这里应该提示有问题
greeting(x)
greeting(y) #这里应该提示有问题

代码我已经指出了两处错误,现在让 mypy 检查一下:

mypy 这个工具,让Python的类型提示变得非常实用_mysql

果然,mypy 发现了三处错误,并一一提示,非常好用啊。

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

y: int = "yyy" # type: ignore

mypy 具有强大且易于使用的类型系统,具有很多优秀的特性,例如类型推断、泛型、可调用类型、元组类型、联合类型和结构子类型。

3、常用的内置类型

mypy 这个工具,让Python的类型提示变得非常实用_linux_02

4、配置文件

mypy 将依次查找当前目录下配置文件

mypy.ini

.mypy.ini

pyproject.toml

setup.cfg

如果还找不到,则依次寻找下面的配置文件:

$XDG_CONFIG_HOME/mypy/config

~/.config/mypy/config

~/.mypy.ini

此外,你也可以使用
python实现bilibili动画下载视频批量改名功能
深入了解python高阶函数编写与使用

万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。