0
我想要在Python中构建多维列表,其中维数在编写时(开发时)是未知的,但在运行时动态确定。在python中创建动态大小的多维列表
示例:如果我想创建一个n维网格,其中每个网格点对应于我创建的对象。 这里我想知道程序运行时变化n的算法。
我想要在Python中构建多维列表,其中维数在编写时(开发时)是未知的,但在运行时动态确定。在python中创建动态大小的多维列表
示例:如果我想创建一个n维网格,其中每个网格点对应于我创建的对象。 这里我想知道程序运行时变化n的算法。
纯Python解决方案:
n = 2
f = [[0.0 for _ in range(2)] for _ in range(3)]
f[0][0] = 8
print (f)
n = 3
f = [[[0.0 for _ in range(2)] for _ in range(3)] for _ in range(3)]
f[0][0][0] = 5
print (f)
numpy
解决方案:
快速入门教程:array-creation
n = 2
f = np.zeros((2, 3,))
n = 3
f = np.zeros((2, 3, 3))
输出:
[[8,0.0],[0.0,0.0],[0.0,0.0]]
[[[5,0.0],[0.0,0.0],[0.0,0.0]],[[ 0.0,0.0],[0.0,0.0],[0.0,0.0]],[[0.0,0.0],[0.0,0.0],[0.0,0.0]]]
对于SOME的原因,我不能在这个问题中加上这个, 即,我希望代码在n = 2时创建这个,当n = 3时,这个代码创建这个 > [[,..,],..,[,..,] > [[[,..,],..,[,..,]],.....,[[,..,],..,[,..,]]] – Panch93
请显示扩展示例。你试过什么了? – Igle
另外,这是如何使用在你的程序/应用程序? – clabe45