如何表达Dict具有两个不同类型值的两个键的类型?例如:
a = {'1': [], '2': {})
Run Code Online (Sandbox Code Playgroud)
以下只是为了让您了解我在寻找什么.
Dict [(str,List),(str,Set)]
我对UnionPython 静态类型中的用法有点困惑。
class A():
foo: int = 10
class B():
bar: str = 'hello'
def get_object() -> Union[A, B]:
return B()
var = get_object()
var.bar
Run Code Online (Sandbox Code Playgroud)
上面的片段返回 error: Item "A" of "Union[A, B]" has no attribute "bar"
文档状态
Intersection 和 Union 之间的交互很复杂,但如果您了解正则集合的交集和 union 之间的交互,应该不会感到惊讶
这让我相信可以像使用or类型一样使用类型变量,而类型检查器不会抛出错误Union[A, B]AB。这不正确吗?
如果是这样,我怎样才能实现模仿这一点的功能?(即 from 的值get_object可以用作类型AorB)