И это будет содержать все элементы решения. Если вы просто пытаетесь получить доступ к x_hist экземпляра, вы правы для доступа через m1.x_hist, но вам, вероятно, не следует использовать переменные класса, если в этом нет необходимости.

езагроможденная версияэто вопрос. Поскольку я так сильно изменился, я задал новый вопрос

Я пытаюсь взять определенные значения из более длинного массиваsolution и поместить их в меньший массив внутри объекта. Этот код должен занимать первую половинуsolution массив и положить его вx_hist вm1и вторая половинаsolution массив и положить его вx_hist вm2, Вместо этого, кажется, взять всеsolution массив и положить его вx_hist для обоих объектов. Кто-нибудь знает, почему это может иметь место? Я случайно векторизовал код?

class Mass:
    x_hist = []

m1 = Mass()
m2 = Mass()
ms = [m1,m2]

solution = [1, 2, 3, 4, 5, 6, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0]

for i in range(len(ms)):
    for k in range(int(len(sol)/len(ms))):
        ms[i].x_hist.append(solution[k+8*i])

print(m1.x_hist)
print(m2.x_hist)

Выход:

[1, 2, 3, 4, 5, 6, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0]
[1, 2, 3, 4, 5, 6, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0]

Я пытаюсь получить вывод:

[1, 2, 3, 4, 5, 6, 7, 8]
[0, 0, 0, 0, 0, 0, 0, 0]

Ответы на вопрос(3)

Ваш ответ на вопрос