Python 分配属性改变长度

Python assigning attribute changing length

我有一个接受参数 X 的 class。这个参数 X 是一个 numpy 数组,包含包含整数的列表。

array([[  101,  2002,  8542, ...,     0,     0,     0],
   [  101,  2002,  8974, ...,     0,     0,     0],
   [  101,  5076,  2743, ...,     0,     0,     0],
   ...,
   [  101,  4302,  2253, ...,     0,     0,     0],
   [  101, 13875,  2003, ...,     0,     0,     0],
   [  101,  1045,  2031, ...,     0,     0,     0]])

我有一个 class 接受这个 X 并将其分配给一个属性。

class TaskADataset(Dataset):
  def __init__(self, X, y):
    self.X = X,
    self.y = y

但是参数 X 和属性 X 现在有不同的长度。

dataset = TaskADataset(X, y)
print(len(dataset.X), len(X))

1 10000

为什么会出现这种情况? 谢谢你的帮助。

正如 shriakhilc 指出的那样,我包含了一个“,”,这将它变成了一个只有一个元素的元组。