優化Python代碼我有一個Python代碼如下:內存效率
import numpy as np
sizes = 2000
array1 = np.empty((sizes, sizes, sizes, 3), dtype=np.float32)
for i in range(sizes):
array1[i, :, :, 0] = 1.5*i
array1[:, i, :, 1] = 2.5*i
array1[:, :, i, 2] = 3.5*i
array2 = array1.reshape(sizes*sizes*sizes, 3)
#do something with array2
array3 = array2.reshape(sizes*sizes*sizes, 3)
我希望來優化內存使用效率,這個代碼,但我不知道。我可以通過更高效的內存方式使用「numpy.reshape」嗎?
重塑不會讓您的程序更高效的內存。就你而言,你似乎有3 * 3大小的浮動元素。重塑會改變矩陣的形狀,但是元素的數量以及它們所佔用的內存將保持不變。但是,矩陣中的每個值都顯示爲大小^ 2倍。創建這種4D矩陣的意義不明確。你想用它來做什麼? –