У меня есть объект python, который был создан и определен редактором swagger. Я написал программу для его заполнения. Однако вместо добавления он продолжает заменять предыдущие записи. Ниже мой код;
from xlrd import open_workbook
from abc_model import BES as bes
for sheet in wb.sheet():
if sheet.name == "ABC"
number_columns = sheet.ncols
for i in range(2,number_of_columns):
xyz = bes(name = sheet.cell(19,i).value))
model.abc_model = xyz
print(model)
Это только печатает и присваивает содержимое столбца 4 (при условии, что всего 4 столбца). Однако в нем должно быть содержимое столбцов 3 и 4. Есть идеи, что я делаю неправильно?






Вместо model.abc_model = xyz попробуйте model.abc_model += xyz
Вы устанавливаете свой столбец на последнее полученное значение, а не добавляете их вместе с вашей итерацией. Вот почему вы получаете только второе значение, а не первое или оба.
Как упоминал @Dylan Smite, используйте model.abc_model += xyz. Эта строка кода в основном означает, что model.abc_model = model.abc_model + xyz. Это означает, что вы добавляете xyz в model.abc_model, а затем снова назначаете его model.abc_model.
Это не сработало, я получаю сообщение об ошибке TypeError: неподдерживаемые типы операндов для +: 'NoneType' и 'BES'
Тогда могу я узнать, какие у вас bes, abc_model, model, xyz соответственно?
model - это объект Python, а bes - это атрибут этой модели. xyz - это экземпляр bes, который я затем добавляю в model.abc_model
Это не сработало, я получаю сообщение об ошибке TypeError: неподдерживаемые типы операндов для +: 'NoneType' и 'BES'