Find length of 2D array Python

Each Answer to this Q is separated by one/two green lines.

How do I find how many rows and columns are in a 2d array?

For example,

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

should be displayed as 3 rows and 2 columns.

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.

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

sum(len(x) for x in input)

Assuming input[row][col],

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

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)))


The answers/resolutions are collected from stackoverflow, are licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0 .