Python——Numpy切片和索引(逗号,冒号:省略号...的使用)

Python——Numpy切片和索引

Numpy对象可以使用 索引和切片 进行访问和修改
索引下标从 0 开始

总结:

搞懂这个总结就ojbk了。^ _ ^
[]中,逗号,区分的是维度,冒号:区分的是索引,省略号… 用来代替全索引长度

用slice()函数创建切片对象

返回值: 切片对象
语法结构:

slice(start[,stop[,step]])
等价于
a[start:stop:step]

实例:

#创建一个1维数组
import numpy as np
a = np.arange(20)
#访问2到7,间隔为1的元素切片
s = slice(2,7,2)
print(s)

[start:stop:step] 直接传入切片参数

#创建一个1维数组
import numpy as np
a = np.arange(20)
#直接利用[::]切片访问
c = a[2]#取索引二的单个元素
c = a[2:7:1]#2~7步长为1 的元素
c2 = a[10]#10到最后一个元素
c3 = a[:10]#开始到10
c4 = a[::-1]#取反
c5 = a[:10:-1]#从后10取反到第10个
print(c,'\n',c2,'\n',c3,'\n',c4,'\n',c5)

在这里插入图片描述

多维数组使用切片

import numpy as np
a = np.array([[1,2,3],[3,4,5],[4,5,6]])
print('a[1]:\n',a[1])
print('a[1:]:\n',a[1:])
print('a[::2]:\n',a[::2])
print('a[::-1]:\n',a[::-1])

在这里插入图片描述
以上代码,切片中没有 ,号,相当于操作了第一维度中的所有内容

多维度操作

import numpy as np
a = np.array([[1,2,3],[3,4,5],[:8,5,6]])
print('第2行第2个元素:',a[1,1])

在这里插入图片描述

切片对象中包含 “…”

切片对象 [] 中包含省略号…
作用: 使得 选择元组的长度 = 数组的维度

如果在行位置使用 … return包含行中元素的ndarray

import numpy as np
a = np.array([[1, 2, 3], [3, 4, 5], [4, 5, 6]])
print('第2列元素',a[::,1])
# 等价于
print('第2列元素',a[...,1])

print('第2行元素',a[1,])
#d等价于
print('第2行元素',a[1,::])
#d等价于
print('第2行元素',a[1,...])
print('第2列开始剩下的所有列\n',a[::,1:])
#等价于
print('第2列开始剩下的所有列\n',a[...,1:])

在这里插入图片描述

总结:

[]中,逗号,区分的是维度,冒号:区分的是索引,省略号… 用来代替全索引长度

  • 10
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

企鹅家的北极熊

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

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

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

打赏作者

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

抵扣说明:

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

余额充值