Как при итерировании списка объектов класса добавить аргумент объекта в пустой список?
l=[]
class CPU():#- класс для описания процессоров;
def __init__(self,name,fr):
self.name = name
self.fr = fr
class Memory():#- класс для описания памяти;
def __init__(self,name,volume):
self.name = name
self.volume = volume
class MotherBoard(): # - класс для описания материнских плат.
def __init__(self,name,cpu,*mems):
self.name = name
self.cpu = cpu
self.total_mem_slots = 4
self.mem_slots = mems[:self.total_mem_slots]
def get_config(self):
for i in self.mem_slots:
#print(self.mem_slots[i])
l.append(i.self.name)
return l
#return [f"Материнская плата: {self.name}", f"Центральный процессор: {self.cpu.name}, {self.cpu.fr}", f"Слотов памяти: {self.total_mem_slots}"]
cpu = CPU('asus', 1333)
mem1, mem2 = Memory('Kingstone', 4000), Memory('Kingstone', 4000)
mb = MotherBoard('Asus', cpu, [mem1, mem2])
#print(mb.get_config())
#print(f"Память: {'; '.join([f'{i.name} - {i.volume}' for i in mems])}")
#print(mb.get_config())
print(mem1,mem2)
print(mb.get_config())
Текст ошибки:
Traceback (most recent call last):
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\class_list.py", line 30, in <module>
print(mb.get_config())
File "C:\Users\admin\AppData\Local\Programs\Python\Python36-32\class_list.py", line 20, in get_config
l.append(i.self.name)
AttributeError: 'list' object has no attribute 'self'