在 python 中创建 3d 数组无法正确创建数组

creating a 3d array in python does not create array correctly

我希望通过在循环中将每个元素附加到数组来制作一个 3d 数组,但我没有获得 3d 数组,而是获得了一个包含更多元素的 1d 数组。我在 Python 2.7

工作

我想得到labels = [1,34,u'te],[2,44,u've],[4,43,u'ht]

我目前的代码是:

labels = []
for line in lines:
    lab = [h/100, maxf, title]
    labels = np.append(labels,lab)

但是从这段代码我得到:

labels = [u'1' u'34' u'te u'2' u'44' u've u'4' u'43' u'ht]

我做错了什么?

您应该使用 labels.append 而不是 numpy.append

示例代码 -

labels = []
for line in lines:
    lab = [h/100, maxf, title]
    labels.append(lab)

此外,这会将 labels 列表创建为 - [[1,34,u'te],[2,44,u've],[4,43,u'ht]]

[1,34,u'te],[2,44,u've],[4,43,u'ht] 在 python 中是不可能的,它们要么是三个不同的列表,要么包含在另一个列表中,如上所示(或元组等)