查找2D 数组 Python 的长度

如何查找2d 数组中有多少行和列?

比如说,

Input = ([[1, 2], [3, 4], [5, 6]])`

应显示为3行2列。

407577 次浏览

Like this:

numrows = len(input)    # 3 rows in your example
numcols = len(input[0]) # 2 columns in your example

Assuming that all the sublists have the same length (that is, it's not a jagged array).

You can use numpy.shape.

import numpy as np
x = np.array([[1, 2],[3, 4],[5, 6]])

Result:

>>> x
array([[1, 2],
[3, 4],
[5, 6]])
>>> np.shape(x)
(3, 2)

First value in the tuple is number rows = 3; second value in the tuple is number of columns = 2.

Assuming input[row][col],

    rows = len(input)
cols = map(len, input)  #list of column lengths

In addition, correct way to count total item number would be:

sum(len(x) for x in input)

You can also use np.size(a,1), 1 here is the axis and this will give you the number of columns

assuming input[row][col]

rows = len(input)
cols = len(list(zip(*input)))