python - 使用 Union 类型设置默认值
问题描述
我想使用 mypy 进行类型检查。函数的一个输入参数接受单个int
或List[int]
.
但是,如果输入参数是单个,我可以使用x: Union[int, List[int]]
设置默认值的正确语法是什么?10
int
x: Union[int = 10, List[int]]
不管用。
解决方案
默认值不是类型提示的一部分。它在类型提示之后,与非联合类型相同:
x: Union[int, List[int]] = 10
请注意与 PEP-8 约定的格式差异:虽然默认值通常在=
(即 as ) 周围没有空格,但当它们根据PEP-484 遵循x=10
类型提示时,这不再是正确的。
推荐阅读
- javascript - alert() 和 return 为我的变量提供不同的值
- sql - 如何通过 SQL 中的总历史计数获取每天的总订单数
- python - (Discord.py) 制作一个记录器来保存机器人所在的对话
- c# - 如何在另一个方法调用中设置方法调用以返回不同的结果
- html - Html 弹窗不会滚动
- azure - 多源到 Azure 数据工厂中的复制活动
- c - 为什么我不能在不定义额外变量的情况下使用这个 C 程序?
- android - Android Alpha 内部版本无法登录。我在哪里可以查看日志文件?
- python - 意外的 split() 行为 Python
- python - 划分 2 列并使用结果创建新列