typing包到底做什么事情呢?
由于python在具体使用时,尤其是在函数参数中,对于变量的类型并不会过多关注,虽然更加方便,但会使代码的易读性变差,有时候自己都不知道传入的是什么参数。因此在python3中引入了一个typing模块,这个模块可以很好解决这个问题。在python2中是无法实现参数类型说明的。
例如:
def twoSum(self, nums: List[int], target: int) -> List[int]:
该函数中,参数nums 为list类型,target为int型整数,最终返回值为list类型。
从中可以看出,typing模块的作用:
- 作为类型检查,防止运行时出现参数和返回值类型不对的情况
- 作为开发文档附加说明,方便使用函数时传入和返回正确的参数,利于开发效率
- 该模块并不会实际影响到程序的运行,不会报错,但是会有提示。
typing常用类型:
-
int,long,float: 整型,长整形,浮点型;
-
bool,str: 布尔型,字符串类型;
-
List, Tuple, Dict, Set:列表,元组,字典, 集合;
-
Iterable,Iterator:可迭代类型,迭代器类型;
-
Generator:生成器类型;