我有一个由包含[key,character]
的记录生成的数组我有一个创建空矩阵的函数,其尺寸由数组的大小和数组的宽度决定。我需要使用第一个数组中的字符填充此列表。现在,当我编译它时,我得到无。有什么方法可以完成这个不同的
def createArray(size):
return [None] * size
def createMatrix(rows,cols):
m = createArray(rows)
for i in range(rows):
m[i] = createArray(cols)
return m
def fillMatrix(matrix, array):
rows = len(matrix)
cols = len(matrix[0])
arrSpot = 0
for r in range(0,rows,1):
for c in range(0, cols, 1):
matrix[r][c] = array[arrSpot][1]
arrSpot += 1
return
答案 0 :(得分:0)
我想你只是忘了给fillMatrix一个返回值。
答案 1 :(得分:0)
执行此操作的一种相当简单的方法是在转到列表时附加行。所以,像这样:
def create_matrix(rows, cols):
matrix = []
for i in range(rows):
row = [0]*cols
matrix.append(row)
return matrix
我通常只会使用numpy。如果你有numpy,那么你可以做到
import numpy as np
matrix = np.zeros((rows,cols))
(请注意,np.zeros的输入是一个元组,而不是两个参数。)
答案 2 :(得分:0)
dimension1 = int(input("Give the dimension of the row: "))
dimension2 = int(input("Give the dimension of the column: "))
matrix = [[0 for i in range(dimension1)] for j in range(dimension2)]
for y in range(dimension2):
for x in range(dimension1):
matrix[y][x] = int(input("next value starting from (0,0) to (0,1) to at
last(dimension1,dimension2) : "))