pytorch numpy list类型之间的相互转换实例

yipeiwu_com7年前Python基础

如下所示:

import torch
from torch.autograd import Variable
import numpy as np
'''
pytorch中Variable与torch.Tensor类型的相互转换
'''
 
# 1.torch.Tensor转换成Variablea=torch.randn((5,3))
b=Variable(a)
print('a',a.type(),a.shape)
print('b',type(b),b.shape)
 
# 2.Variable转换成torch.Tensor
c=b.data#通过 Variable.data 方法相当于将Variable中的torch.tensor 取出来
print('c',c.type(),c.shape)
 
'''
torch.tensor与numpy之间的相互转换
'''
# 3.torch.tensor转换成numpy
d=c.numpy()
# 4.numpy转换成torch.tensor
e=torch.from_numpy(d)
print('d',type(d))
print('e',type(e))
 
'''
numpy和list之间的相互转换  注意这种转换只支持one-dimension array
'''
# 5.numpy转换成list
f1=d.tolist()
f2=list(d)
# 6.list转换成numpy
g=np.asarray(f2)
print('f1',type(f1))
print('f2',type(f2))
print('g',type(g))
'''
a torch.FloatTensor torch.Size([5, 3])
b <class 'torch.Tensor'> torch.Size([5, 3])
c torch.FloatTensor torch.Size([5, 3])
d <class 'numpy.ndarray'>
e <class 'torch.Tensor'>
f1 <class 'list'>
f2 <class 'list'>
g <class 'numpy.ndarray'>
'''

以上这篇pytorch numpy list类型之间的相互转换实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

pytorch如何冻结某层参数的实现

在迁移学习finetune时我们通常需要冻结前几层的参数不参与训练,在Pytorch中的实现如下: class Model(nn.Module): def __init__(sel...

python日志模块logbook使用方法

python自带了日志模块logging,可以用来记录程序运行过程中的日志信息。同时python还有logbook模块用来取代logging模块,在很多的项目中logbook模块使用也是...

Python多层装饰器用法实例分析

本文实例讲述了Python多层装饰器用法。分享给大家供大家参考,具体如下: 前言 Python 的装饰器能够在不破坏函数原本结构的基础上,对函数的功能进行补充。当我们需要对一个函数补充不...

python optparse模块使用实例

使用命令行时,如果要添加选项的话,python 2.3里新增加了一个模块叫optparse,也是专门来处理命令行选项的。 复制代码 代码如下: from optparse import...

Python3.5模块的定义、导入、优化操作图文详解

Python3.5模块的定义、导入、优化操作图文详解

本文实例讲述了Python3.5模块的定义、导入、优化操作。分享给大家供大家参考,具体如下: 1、模块体系大纲 2、模块的定义 模块的本质:是一个.py格式的Python文件。文件...