Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从python中的2D数组中选择“区域”_Python_Arrays - Fatal编程技术网

从python中的2D数组中选择“区域”

从python中的2D数组中选择“区域”,python,arrays,Python,Arrays,在python中是否有方法选择2d数组的特定“区域”? 我可以使用阵列切片只投影出一行或一列,但我不确定如何从大型2d阵列中选择“子阵列”。 提前谢谢 Jack如果您使用的是numpy库,则可以使用numpy更高级的切片来完成此操作,如下所示: import numpy as np x = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]) print x[0:2, 2:4

在python中是否有方法选择2d数组的特定“区域”? 我可以使用阵列切片只投影出一行或一列,但我不确定如何从大型2d阵列中选择“子阵列”。 提前谢谢 Jack

如果您使用的是numpy库,则可以使用numpy更高级的切片来完成此操作,如下所示:

import numpy as np
x = np.array([[1, 2, 3, 4], 
              [5, 6, 7, 8], 
              [9, 10, 11, 12]])

print x[0:2,  2:4]
#       ^^^   ^^^
#       rows  cols

# Result:
[[3 4]
 [7 8]]
更多信息请访问

如果不想使用numpy,可以使用如下列表:

x = [[1, 2, 3, 4], 
     [5, 6, 7, 8], 
     [9, 10, 11, 12]]

print [row[2:4] for row in x[0:2]]
#          ^^^      ^^^ select only rows of index 0 or 1
#          ^^^ and only columns of index 2 or 3

# Result:
[[3, 4], 
 [7, 8]]
你是说类似于数组[row1:row2,col1:col2]的东西吗?