一般切片的操作都很简单,比如对于一个list,我们要用切片取部分内容,可以有如下操作:
1, 2, 3, 4, 5] L = [ |
对于L[i:j]
有,从第i
个开始取,取到第j-1
个为止。同样对于str和tuple都可以这样操作。
下边说个不一样的:
现在我们有二维数组,
[1, 2, 3, 4]
[5, 6, 7, 8]
[9, 10, 11, 12]
[13, 14, 15, 16]
1.现在如果我们想取[2, 3]
,那么该怎么操作呢?
>>>import numpy as np |
2.现在如果我们想取[6, 7, 8]
呢?
>>>print(a[1:2 , 1:4]) |
3.现在如果我们想取2, 6
呢?
>>>print(a[:2 , 1:2]) |
4.现在如果我们想取8, 12, 16
呢?
>>>print(a[1: , 3:]) |
通过以上几个例子我们可以发现,这中间多了个逗号,
。逗号,
前边表示对二维数组的「行」进行操作,逗号,
后边表示对二维数组的「列」进行操作。对「行」「列」的操作,又都遵循上边第一个一维数组的例子。从第i
个开始取,取到第j-1
个为止
如果我们想取「整行」或者「整列」呢?
1.现在如果我们想取前两行呢?
>>>print(a[:2 , ]) |
2.现在如果我们想取第0-2列呢?
>>>print(a[: , 0:2]) |
另外,如果从第0个开始,则这个0可以省略。如果取到最后一个位置,则也可以省略。
比如,
>>>a = [1,2,3,4,5] |