携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第16天,点击查看活动详情
0 环境
- 编辑器:pycharm或vscode
- 系统版本:windows10
- python版本:3.9.6
1 类型注解
python3的特性,讲一个类型提示装饰器,python是动态语言,然后变量类型是在运行时决定的,在代码中(生命周期中),我是可以修改的,可能一开始是整型,然后最后变成了一个字符串类型,赋值即定义嘛,比如我创建一个add函数,它的功能是两个整数相加,但是呢有可能传过来的是字符串,这种情况下又该怎么处理呢,如下代码:
count括号里的两个参数后面都要加冒号跟类型,(x:类型, y:类型),参数类型的补充,定义括号内的参数后,在括号的后面加上 -> 类型,它代表是该函数的返回值的类型。这里的注解,是为了让你清晰的知道传什么类型的参数,以及返回什么类型的值,但是不会做类型检查的。说白方便人看的,但是真正运行时是不做检查。
def count(x: int, y: int) -> int:
return x + y
我直接调用print(count("12", "32")),虽然都是字符串,但是照常输出了结果。
假如要是用的pycharm之类的工具的话,会有类型的提示,警告希望是int类型。
当我们想查看该函数的类型注解的汇总,可以使用如下图的方式查看。
还可以使用typing类型注解的方式,官网文档
2 总结
类型注解帮助我们很明朗的知道,需要传入的参数的类型,以及返回的类型是什么,但是它的目的只是方便人的理解,但是运行时是不做相应的代码检查的。而pycharm这类的IDE只是做到了一个辅助异常提示的作用,照样输入不符合类型的值,以及返回结果。还有注意:这里的函数括号后面->,不要和js中=>搞混肴哦。