假设我有一个接受 a Garthok
、 an Iterable[Garthok]
、 anIterable[Iterable[Garthok]]
等的函数。
def narfle_the_garthoks(arg):
if isinstance(arg, Iterable):
for value in arg:
narfle_the_garthoks(arg)
else:
arg.narfle()
有没有办法为 arg 指定一个类型提示,表明它接受任何级别的Iterable
s Garthok
?我怀疑不是,但我想我会检查我是否遗漏了什么。
作为一种解决方法,我只是指定了几个级别,然后以Iterable[Any]
.
Union[Garthok,
Iterable[Union[Garthok,
Iterable[Union[Garthok,
Iterable[Union[Garthok, Iterable[Any]]]]]]]]