理解 a[:,time_step,:] 和 a[:time_step:]

'''
Author: 365JHWZGo
Description: 理解 a[:,time_step,:] 和 a[:time_step:]
Date: 2021/11/3 21:23
FilePath: day1103-3.py
'''

#导包
import torch
import numpy as np

#创造数据
a = np.linspace(1,9,9).reshape(3,3,1)

#转化为tensor数据
a = torch.from_numpy(a)

#打印tensor a
print('a',a)

print('a.size(1)',a.size(1))

#循环遍历
for time_step in range(a.size(1)):
    out = a[:,time_step,:]
    print('a[:,time_step,:] ', out )

print('------------------------------------')

for time_step in range(a.size(1)):
    out = a[:time_step:]
    print('a[:time_step:] ', out )

打印出a来是一个(331)的矩阵向量【3->黑色,3->红色,1->绿色】
在这里插入图片描述
打印出的a[:,time_step,:]
在这里插入图片描述
详细解说一下这个循环
for time_step in range(a.size(1)):
#a.size(1) == 3,所以它是0->2循环三遍
out = a[:,time_step,:]
#当time_step = 0时,a[:,time_step,:] => a[:,0,:] 截取第二维度中下标为0的数
a[::] 是数组的截取 => a[起始下标:终止下标:每次截取的长度]

在这里插入图片描述
out = a[:time_step:]
当time_step==0时,截取的是 [0,0) , 所以为空
当time_step==1时,截取的是 [0,1) , 所以截取的是第一维向量第一个数据
当time_step==2时,截取的是 [0,2) , 所以截取的是第一维向量的前两个数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

365JHWZGo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值