Метод int
Метод int преобразует тензор, содержащий единственный элемент, в целое число типа int Python. Если тензор содержит более одного элемента, метод вызовет ошибку. Метод не принимает параметров и всегда возвращает значение типа int. При преобразовании тензора с плавающей точкой дробная часть отбрасывается.
Синтаксис
t.int()
Пример
Давайте создадим тензор из одного целого числа и преобразуем его в целое число Python:
import torch
t = torch.tensor([42])
res = t.int()
print(res)
print(type(res))
Результат выполнения кода:
42
<class 'int'>
Пример
Давайте преобразуем тензор с плавающей точкой в целое число:
import torch
t = torch.tensor([3.14])
res = t.int()
print(res)
Результат выполнения кода:
3
Пример
Попробуем преобразовать тензор из двух элементов в целое число:
import torch
t = torch.tensor([1, 2])
try:
res = t.int()
except Exception as e:
print(e)
Результат выполнения кода:
"Only one element tensors can be converted to Python scalars"
Пример
Метод int работает с тензорами на разных устройствах, включая CUDA:
import torch
if torch.cuda.is_available():
t = torch.tensor([42]).cuda()
res = t.int()
print(res)
Результат выполнения кода:
42