han*_*nap 6 python type-hinting pycharm
序列(例如列表)的方法__getitem__()可以返回单个项目或项目序列。例如,给出下面的函数装饰:
def __getitem__(self, index) -> Union[Product, Generator[Product, None, None]]:
return super(Products, self).__getitem__(index)
Run Code Online (Sandbox Code Playgroud)
用法示例:
i1 = 34
for product in products[i1:]:
print(product.name)
Run Code Online (Sandbox Code Playgroud)
我相信Union[Product, Generator[Product, None, None]]这是正确的,但 PyCharm 将此标记为不正确。我是否滥用了类型库,或者这是 PyCharm 问题?
谢谢!