support swtichlayer for pynative

This commit is contained in:
chujinjin 2021-02-04 15:33:19 +08:00
parent f8fc047f2b
commit 96229b7358
1 changed files with 14 additions and 0 deletions

View File

@ -161,6 +161,20 @@ class Tensor(Tensor_):
return bool(data[0])
raise ValueError("The truth value of an array with several elements is ambiguous.")
def __index__(self):
data = self.asnumpy()
if not (data.dtype == "int8"
or data.dtype == "int16"
or data.dtype == "int32"
or data.dtype == "int64"
or data.dtype == "bool"):
raise ValueError("Only integer tensors of a single element can be converted to an index.")
if data.shape == ():
return int(data)
if data.shape == (1,):
return int(data[0])
raise ValueError("Only integer tensors of a single element can be converted to an index.")
def __pos__(self):
return self