В настоящее время это мой код для чтения файла CSV, создания объекта персонажа и добавления каждого человека в список. Одна строка Пример ввода: Джон, Лэнгли, 1,2,2,3,5
Когда я печатаю (за) каждый раз после создания объекта персонажа. Мой вывод верен, но как только я добавлю этого человека в список, который я составил, цифры c значения AKA «черты» для этого человека будут такими же, как последние черты людей в файле CSV.
Например:
Джон, Лэнгли, 1,2,2,3,5 - (добавить в список) -> Джон, Лэнгли, 1,1,1 , 1,1
Изабель, Смит, 3,2,4,4,0 - (добавить в список) -> Изабель, Смит, 1,1,1,1 , 1
Джон, Доу, 1,1,1,1,1 - (добавить в список) -> Джон, Доу, 1,1,1,1,1
Это влияет на меня тем, что я продолжаю, потому что мне нужно, чтобы черты объектов человека были действительными, чтобы выполнить их анализ в следующих двух методах. ПОЖАЛУЙСТА, игнорируйте мои заявления о печати. ОНИ БЫЛИ ДЛЯ МОИХ ЦЕЛЕЙ ОТЛАДКИ
def read_file(filename):
file = open(filename, "r", encoding='utf-8-sig')
Traits_dict = {}
pl = []
next(file)
for line in file:
line = line.rstrip('\n')
line = line.split(',')
first = str(line[0].strip())
last = str(line[1].strip())
w = line[2].strip()
hobby = line[3].strip()
social = line[4].strip()
eat = line[5].strip()
sleep = line[6].strip()
Traits_dict["Work"] = w
Traits_dict["Hobbies"] = hobby
Traits_dict["Socialize"] = social
Traits_dict["Eat"] = eat
Traits_dict["Sleep"] = sleep
per = Person(first, last, Traits_dict)
print(per)
pl.append(per)
print(pl[0])
print(pl[1])
print(pl[2])
print(pl[3])
print(pl[4])
return pl