Python 从一系列唯一值创建多维列表
我试图创建一个nxn2d列表,其值从0到n开始 像这样的 [1 2 3 4] [5 6 7 8] [9 10 11 12] 我试着用下面的代码来做Python 从一系列唯一值创建多维列表,python,Python,我试图创建一个nxn2d列表,其值从0到n开始 像这样的 [1 2 3 4] [5 6 7 8] [9 10 11 12] 我试着用下面的代码来做 self.board = [[list(range(n*n) for i in range(self.n)] for num in range(self.n)] 但是它用16个元素填充列表中的每个元素 我应该使用什么表达式来替换列表(范围(n*n))?如何: >>> n = 4 >>> [[j*n+i+1
self.board = [[list(range(n*n) for i in range(self.n)] for num in range(self.n)]
但是它用16个元素填充列表中的每个元素
我应该使用什么表达式来替换列表(范围(n*n))?如何:
>>> n = 4
>>> [[j*n+i+1 for i in range(n)] for j in range(n)]
[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]
尝试:
[范围(0,N,步长)内i的列表(itertools.islice(范围(1,N+1),i,i+step)]
>>> N = 4
>>> board = [[j for j in xrange(N*i+1,N*i+N+1)] for i in xrange(N)]
[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]