torch.is_nonzero(input)
- input: 输入张量
若输入是 不等于零的单元素张量 则返回True,否则返回False
- 不等于零的单元素张量:
torch.tensor([0.])
或torch.tensor([0])
或torch.tensor([False])
- 单元素张量: 只有一个数 的张量
import torch
print(torch.is_nonzero(torch.tensor([0.]))) # False
print(torch.is_nonzero(torch.tensor([1.5])))# True
print(torch.is_nonzero(torch.tensor([False])))# False
print(torch.is_nonzero(torch.tensor([3])))# True
# torch.is_nonzero(torch.tensor([1, 3, 5])) # 有三个元素,不是单元素张量
# 报错:RuntimeError: Boolean value of Tensor with more than one value is ambiguous
# torch.is_nonzero(torch.tensor([])) #没有元素,不是单元素张量
# 报错:RuntimeError: Boolean value of Tensor with no values is ambiguous