首页 > 解决方案 > 使用 Union 类型设置默认值

问题描述

我想使用 mypy 进行类型检查。函数的一个输入参数接受单个intList[int].

但是,如果输入参数是单个,我可以使用x: Union[int, List[int]]设置默认值的正确语法是什么?10int

x: Union[int = 10, List[int]]不管用。

标签: pythontypecheckingmypy

解决方案


默认值不是类型提示的一部分。它在类型提示之后,与非联合类型相同:

x: Union[int, List[int]] = 10

请注意与 PEP-8 约定的格式差异:虽然默认值通常在=(即 as ) 周围没有空格,但当它们根据PEP-484 遵循x=10类型提示时,这不再是正确的。


推荐阅读