我正在为一个特定的深度学习问题编写一个自定义Dataset
类,并且出现了如何使用类型提示注释__getitem__
的index
的问题。
给定
def __getitem__(self, i: int) -> Tuple[Tensor, Tensor]:
return self.X[i], self.y[i]
考虑到i
可以是切片(例如X[:i]
(,注释CCD_4的最佳方式是什么?
所以,正如我所说,i
可以是整数或slice
对象。
所以你可以试试:
def __getitem__(self, i: Union[int, slice]) -> Tuple[Tensor, Tensor]:
...
这将是类型为的Union
from typing import Union, Tuple
def __getitem__(self, i: Union[int, slice]) -> Tuple[Tensor, Tensor]:
. . .
Union[int, slice]
的意思是"它可以是int
,也可以是CCD11"。