python中三个点[,...]的切片方式

想要真正理解切片,不要有长宽高的概念,要用维度的概念去替代

p y t h o n 中 三 个 点 ‘ [ , . . . ] ‘ 的 切 片 方 式 python中三个点`[,...]`的切片方式 python[,...]

三个点表示对最低的维度进行操作,所谓最低维度就是[Xn,Xn-1,…,X0]数组中X0这个维度

在这里插入图片描述

import torch
rgb = torch.randn(1, 3, 3, 4)
rgb

在这里插入图片描述

rgb.shape

在这里插入图片描述

rgb[...,1]

在这里插入图片描述

rgb[...,1].shape

在这里插入图片描述

rgb2 = torch.randn(3, 3, 4)
rgb2

在这里插入图片描述

rgb2[...,1]

在这里插入图片描述

rgb2[...,1].shape

在这里插入图片描述


import numpy
>>> a = numpy.array([[1,2,3,4,5],[6,7,8,9,10],[1,2,3,4,5],[6,7,8,9,10]])
>>> a
array([[ 1,  2,  3,  4,  5],
       [ 6,  7,  8,  9, 10],
       [ 1,  2,  3,  4,  5],
       [ 6,  7,  8,  9, 10]])
>>> a[...,2] #表示遍历每行,2表示索引为2的所在列
array([3, 8, 3, 8])
>>> a[...,:2]#表示遍历每行,:2表示索引为<2的0,1所在的列
array([[1, 2],
       [6, 7],
       [1, 2],
       [6, 7]])
>>> a[...,::2]#表示遍历每行,2表示步长,选取多索引为0,2,4所在的列
array([[ 1,  3,  5],
       [ 6,  8, 10],
       [ 1,  3,  5],
       [ 6,  8, 10]])
a[None,...]#相当于插入维度,也想当于reshape(a,[1,4,4])
array([[[[ 1,  2,  3,  4,  5],
         [ 6,  7,  8,  9, 10],
         [ 1,  2,  3,  4,  5],
         [ 6,  7,  8,  9, 10]]]])
  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值