1
我想實現一個函數,用對象初始化任意大小的列表,類似於numpy數組初始化方法的工作方式。初始化任意形狀的嵌套列表
def fill(shape, object):
我一直在敲打我的頭這一點,但不能想辦法把任意長度維度做到這一點。我猜它需要某種類型的遞歸。
這裏是所期望的行爲的例子。爲簡單起見,對象只是浮點數字0,但我需要這與任何類工作:
> fill((2, 3, 4), 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.]]
]
一個整數n乘以清單不會讓N個新的列表,它只會令到同一個列表中選擇多個引用。 – DSM 2012-04-19 15:30:09
當然,我的錯誤 – GP89 2012-04-19 15:32:06
此外,它只適用於三個維度。它在'fill((2,3,4,5),float)'失敗。 – 2012-04-19 15:39:47