有没有不同的方法来自动调整 jupyter 列表的长度?

Is there a different way to automatically adjust the length of a jupyter list?

我正在使用 for 循环来缩短我的代码,以获取数据框的特定部分并找到均值和标准差。然后我将这些值保存到一个列表中,因为有不同的数据类型。

我想通过编写 list=[0,0,0]*(len(cities)) 来简单地初始化列表,以自动创建一个 x x 3 列表,其中 x 是但是有很多城市。如图所示,这样做的问题是,将单个索引设置为一个值,例如 list[0][1]=1,不仅会影响该索引,还会影响每一行中的每第 3 列。

我希望有一个更优雅的解决方案,而不是简单地手动计算城市数量和 copy/pasting [0,0,0],...那么多次。我意识到一个解决方案是不像我那样使用 for 循环并完全避免列表,但这不是这个问题的重点。

Simple image of the issue described above. Value being applied to all rows of list.

https://i.stack.imgur.com/hruFz.png

zeros = [[0,0,0] for _ in range(50)]

是一种方式

但可能更好

zeros = numpy.zeros((50,3))

(如果 numpy.array 就足够了)

如果您需要使用混合数据类型(例如字符串和数字)

zeros = numpy.zeros((50,3),object)