a = array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
a[-10] #0
a[-11] #报越界错误
a[2:-5]# [2,3,4]
a[-5:2]# []空
a[-9:2]# 1
a[-10:2]# array([0, 1])
切片是顺时针切的,按起始位置到终止位置切,如果跨越索引0,则为空
a[::] # array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
a[2:] # array([2, 3, 4, 5, 6, 7, 8, 9])
a[:4] # array([0, 1, 2, 3])
起始位置为空默认为0;
终止位置为空默认为len(a);
a[::-1] #相当于a[-1:-11:-1] 结合上面的索引机制很容易得出结果为:array([9, 8, 7, 6, 5, 4, 3, 2, 1, 0])
a[:-5:-3] #相当于a[-1:-5:-3],结果为[9,6]
Str、list、numpy切片访问方式一致
切片时不对起始和终止值做合法性判断,a[10000:100],a[10000:]都不会报错
切片是顺时针切的,按起始位置到终止位置切,如果跨越索引0,则为空
顺时针切片时,起始位置默认为0;逆时针切片时,起始位置默认为-1