Python - typing 模块 —— Union

前言

typing 是在 python 3.5 才有的模块

 

前置学习

Python 类型提示:https://www.cnblogs.com/poloyy/p/15145380.html

 

常用类型提示

https://www.cnblogs.com/poloyy/p/15150315.html

 

类型别名

https://www.cnblogs.com/poloyy/p/15153883.html 

 

NewType

https://www.cnblogs.com/poloyy/p/15153886.html

 

Callable

https://www.cnblogs.com/poloyy/p/15154008.html

 

TypeVar 泛型

https://www.cnblogs.com/poloyy/p/15154196.html

 

Any Type

https://www.cnblogs.com/poloyy/p/15158613.html

 

Union

联合类型

Union[int, str] 表示既可以是 int,也可以是 str

 

等价写法

vars: Union[int, str]
# 等价于
vars: [int or str]


vars: Union[int]
# 等价于
vars: int

 

union 等价写法

Union[int] == int

最终 Union[int] 返回的也是 int 类型

 

Union[int, str, int] == Union[int, str]

重复的类型参数会自动忽略掉

 

Union[int, str] == Union[str, int]

自动忽略类型参数顺序

 

Union[Union[int, str], float] == Union[int, str, float]

union 嵌套 union 会自动解包

 

Optional

https://www.cnblogs.com/poloyy/p/15170297.html

 

posted @ 2021-08-21 17:15  小菠萝测试笔记  阅读(13017)  评论(0编辑  收藏  举报