详解numpy库ndarray对象的切片操作(三帽号规则)
详解numpy库ndarray对象的切片操作(三帽号规则)ndarray对象切片操作的规叫做“三帽号规则”
三帽号规则的格式如下:
[开始索引:结尾索引:步长]
说明:
①
切片区间是左闭右开的,即“开始索引:结尾索引”表示的区间为[开始索引,结尾索引)。
②
三帽号规则中的三个参数既可为正,也可为负。
③
当“开始索引”不填写时表示从这个维度的第0个元素开始;
当“结尾索引”不填写时表示到这个维度的最后一个元素止。
当“步长”不填写时表示步长为1,此时可以省略掉结尾索引与步长之间的冒号。
④
若“开始索引”和“结尾索引”为负时,则表示倒数的第几个元素,比如-1表示倒数的第1个元素
当步长为负数时,相当于从后往前进行切片操作,特殊的[::-1]表示作倒序操作。
示例如下:
import numpy as np
a = np.array([,
,
,
,
], dtype='float32')
a_slice = a
print('a_slice=\n{}'.format(a_slice))
上面代码的运行结果如下:
a_slice=
[
]
从该运行结果可以看出,
切片操作“a_slice = a”把a的第0~1行和第0~1列的内容切片下来了,
注意是左闭右开区间,
所以并不是切取的第0~2行和第0~2列的内容。
改变切片范围如下:
http://pic1.hhai.cc/pic1/2022/2022-11/002/059.png
运行结果如下:
a_slice=
[[ 6.7.]
]
再改变切片范围如下:
http://pic1.hhai.cc/pic1/2022/2022-11/002/060.png
运行结果如下:
http://pic1.hhai.cc/pic1/2022/2022-11/002/061.png
通过上面的叙述和例子相信大家就对ndarrya对象的切片操作有个详细的了解了。
页:
[1]