类型标注
Python 是一个静态类型的语言,但是在编码过程中并不需要严格指定变量、参数的类型,也不需要声明函数返回值的类型。这种特性在 Python 日常编程中虽然带来了很大的自由度,但是也带来了许多潜在的问题,例如在不知情的情况下错将一个整型值赋予了字符串类型变量。
此外,对于变量及参数类型的不显式限定,也给代码中确定参数类型带来了额外的工作。
于是在 Python 3.5 版本开始,按照 PEP 484 的规定,Python 增加了类型标注功能(Type Hints)。这项协议旨在为 Python 加入显式的类型声明,其中就包括函数参数与函数返回值的类型声明。但是需要注意的是,Python 3.5 开始加入的类型标注功能仅仅是一个类型标注协议,但未提供类型检查工具,所以在编码时需要其他的工具来配合使用。
类型标注只是给 Python 提供了一个额外的属性,并不影响任何运行时功能,解释器也不会根据类型标注进行任何类型检查。