For learning reason, you can create 2d array ~ matrix in one row like: matrix2 = [[0 for vc in range(0, v)] for vr in range(0, r)] Since python is a funcational language, for learning reason, you can define a map/ reduce over matrix like: def map(matrix, r,c, fn): for vr in range(0, r): for vc in range(0, c): fn(matrix[r][c])