python [:3] 提取数组中的数

搜索答案搜索不到,自己试了一把.

首先生成一维数组

a =np.array([1,2,3,4,5,6,7,8,9])
>>> print a
[1 2 3 4 5 6 7 8 9]

取数组前3个值

b =a[:3]
>>> print b
[1 2 3]

 取前3个以后的值

b =a[3:]
>>> print b
[4 5 6 7 8 9]

取数组的后3个值

b =a[-3:]
>>> print b
[7 8 9]

取数组后3个以前的值

b =a[:-3]
>>> print b
[1 2 3 4 5 6]

所以-号表示方向,从前取还是从后取,与数字配合使用,:表示所有的意思.

对于二维的数组有同样的效果,只是取的方法要考虑的行或列

a=np.eye(5)
>>> b=a[:,:3]
>>> print a
[[1. 0. 0. 0. 0.]
 [0. 1. 0. 0. 0.]
 [0. 0. 1. 0. 0.]
 [0. 0. 0. 1. 0.]
 [0. 0. 0. 0. 1.]]
>>> print b
[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]
 [0. 0. 0.]
 [0. 0. 0.]]

又取行又取列

b=a[:3,:3]
>>> print b
[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]

 

 

    原文作者:Z.越努力越幸运.PN
    原文地址: https://blog.csdn.net/ZPN_LBJ/article/details/89637024
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞