Python 3.x 创建一个二维数组,所有元素最初设置为';无';
我发现的答案非常有用,但我以前从未见过关键字None以这种方式使用,并且无法理解下面代码块中的函数:Python 3.x 创建一个二维数组,所有元素最初设置为';无';,python-3.x,loops,keyword,Python 3.x,Loops,Keyword,我发现的答案非常有用,但我以前从未见过关键字None以这种方式使用,并且无法理解下面代码块中的函数: def get_matrix(self, n, m): num = 1 ***matrix = [[None for j in range(m)] for i in range(n)]*** for i in range(len(matrix)): for j in range(len(matrix[i])): matrix[i][
def get_matrix(self, n, m):
num = 1
***matrix = [[None for j in range(m)] for i in range(n)]***
for i in range(len(matrix)):
for j in range(len(matrix[i])):
matrix[i][j] = num
num += 1
return matrix
如果有人能够澄清,请提前感谢,我将重新命名该问题,以更准确地反映所涉及的主题。在填充之前,它将创建一个包含
None
的2D数组。数组的值实际上并不重要,因为它会在以后重新分配,但没有一种类型比其他类型(特别是数字)占用更少的空间,因为这里存储的是数字)
相关-@ggorlen:它既是一个关键字又是一个对象(如Py3中的
True
和False
);因为它是一个有效的名称,所以您可以区分两者之间的区别,但是您不能命名任何其他名称None
(这样就类似于True
和False
)。关键字
模块将其包含在kwlist
中,整个函数体可以返回[[j+i*m+1对于范围内的j(m)]对于范围内的i(n)]
None
只是一个占位符,用于填充数组。