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