我是 python 的新手,正在学习更多关于列表理解的知识。我想像这样生成一个简单的二维数组:
预期列表:
[[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12],[13, 14, 15, 16]]
我尝试过的:
[[j for j in range(6)] for _ in range(6)]
[[0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4]]
也许我在第二个循环中需要某种计数器而不是 j,但是这里不允许执行 count += 1 并且会给出语法错误。
请您参考如下方法:
使用 range(start, stop[, step]) 的简单解决方案函数 step参数:
result = [list(range(i, i+4)) for i in range(1, 16, 4)]
print(result)
输出:
[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]
For a positive step, the contents of a range
rare determined by the formular[i] = start + step*iwherei >= 0andr[i] < stop.
