2017-08-08 88 views
0

我想要在Python中構建多維列表,其中維數在編寫時(開發時)是未知的,但在運行時動態確定。在python中創建動態大小的多維列表

示例:如果我想創建一個n維網格,其中每個網格點對應於我創建的對象。 這裏我想知道程序運行時變化n的算法。

+0

對於SOME的原因,我不能在這個問題中加上這個, 即,我希望代碼在n = 2時創建這個,當n = 3時,這個代碼創建這個 > [[,..,],..,[,..,] > [[[,..,],..,[,..,]],.....,[[,..,],..,[,..,]]] – Panch93

+1

請顯示擴展示例。你試過什麼了? – Igle

+0

另外,這是如何使用在你的程序/應用程序? – clabe45

回答

0

純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]]]

相關問題