python--关于[::,::]切片的操作

[::,::]以逗号为分割,逗号前面代表行,逗号后面代表列,
步长方向表示数字的索引值为多少,如
0 1 2 3 4 5 6 7 8 9
正索引值: 0 1 2 3 4 5 6 7 8 9
负索引值; -10 -9 -8 -7 -6 -5 -4 -3 -2 -1

以行为例:
首先:先看步长的方向,正号为从左到右,负号为从右到左
其次:看起始值的索引值,正值就是正索引值,负值就是负索引值
最后:看终值的索引值,同理

a=np.arange(10)
print(a)

#1、切取单个元素。当索引只有一个数字时,表示切取莫一个元素
print(a[-2])

#

print(a[1:4])#当起始值和结束值都为正时,左开右闭

print(a[1:4:-1])#表示从右往左取值,且起始值从第一位开始,到第六位结束,与方向矛盾,所以输出空列表

print(a[4:1:-1])#表示从右往左取值,起始值从第四位开始,到第一位结束,,且左开右弼闭

print(a[:6:-1])#表示从右往左取值,起始值从端点开始,到第六位结束,
# 这个端点表示步长方向的端点,如果没写就从右边开始,写了就表示还是从左边开始

print(a[6::-1])#表示从右往左取,起始值为第六位,终点值为步长方向的末尾

print(a[:-6:-1])

b=np.arange(16).reshape(4,4)
print(b)


#
print(b[-2:-4:-1,-2:-4:-1])

print(b[1:3,1:3])

结果如下:
python--关于[::,::]切片的操作_第1张图片
如果想取最后几列

data[-4:-1]

python--关于[::,::]切片的操作_第2张图片

你可能感兴趣的:(python,索引)