Python 使用Union类型设置默认值

Python 使用Union类型设置默认值,python,typechecking,mypy,Python,Typechecking,Mypy,我想使用mypy进行类型检查。函数的一个输入参数接受单个int或List[int] 我可以使用x:Union[int,List[int]],但是,如果输入参数是单个int,那么设置默认值10的正确语法是什么 x:联合[int=10,列表[int]]不工作。默认值不是类型提示的一部分。它位于类型提示之后,与非联合类型相同: x: Union[int, List[int]] = 10 请注意格式与PEP-8约定之间的差异:虽然默认值通常在=周围没有空格,即x=10,但当它们根据指定的类型提示后,这

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

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


x:联合[int=10,列表[int]]不工作。

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

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

请注意格式与PEP-8约定之间的差异:虽然默认值通常在=周围没有空格,即x=10,但当它们根据指定的类型提示后,这不再是事实。

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

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

请注意格式与PEP-8约定之间的差异:虽然默认值通常在=周围没有空格,即x=10,但当它们根据设置默认值10之后的类型提示时,就不再是这样了。

,如果输入参数是单个int。如果收到输入参数,为什么需要默认值?你能显示一个吗?我不明白,如果输入参数是一个int,那么设置默认值10。如果你收到一个输入参数,为什么需要一个默认值?你能给我展示一下吗?@Andi这在概念上是如何运作的?一个参数怎么可能有多个默认值呢?我的评论毫无意义。已删除。@Andi这在概念上是如何工作的?一个参数怎么可能有多个默认值呢?我的评论毫无意义。删除。