python——type hints

介绍

  • type hints 主要是要指示函数的输入和输出的数据类型,数据类型在typing 包中,基本类型有str,list,dict等等。
1
2
3
def hello(name: str) -> None:

    print('hello {}'.format(name))

常用类型

Union

  • Union 是当有多种可能的数据类型时使用,比如函数有可能根据不同情况有时返回str或返回list,那么就可以写成Union[list, str]

Optional

  • Optional是Union的一个简化, 当数据类型中有可能是None时,比如有可能是str也有可能是None,则Optional[str], 相当于Union[str, None]. 注意和函数有默认参数None有区别,不可省略默认参数,如下示例:
1
2
3
原始:def func(args = None):
错:def func(args:Optional[str]) -> None:
对:def func(args:Optional[str] = None) -> None: #依然要保留默认赋值