Я пытаюсь добавить элемент в список, но я получил эту ошибку. Я проверяю, являются ли типы двух объектов одинаковыми, и если они имеют один и тот же тип, чем я добавляю его. Итак, следующая функция - это то, где я получил ошибку. Класс содержит элементы.'str' объект не имеет атрибута 'get_type' ERROR
def LogsBeiTyp(self,list,type):
"""
Thid funftion return a list that contains all logs group by a type
:param list: a list that contains all object logare
:return: a list modified in such a way thet elements are gropu by type
"""
l=[]
for el in list:
if el.get_type()==type:
l.append(el)
return l
И это класс:
class Logare():
"""
This class contains information about a log
It is known that each log has a date,type,description
"""
def __init__(self,date,time,type,melldung):
"""
The incresemnt function
:param date: a string which is written as "YYYY-MM-DD"
:param type: a string that contains in cappital letters the type of thr log
:param description: a string that contains more details about the log
"""
self.date=date
self.time=time
self.type=type
self.melldung=melldung
def get_date(self):
return self.date
def get_time(self):
return self.time
def get_type(self):
return self.type
def get_melldung(self):
return self.melldung
def __str__(self):
return '%s %s %s %s'%(self.date,self.time,self.type,self.melldung)
Вот где я BILD список
from LogDatei.LogDatei import *
from Date.Date import *
from Melldung.Melldung import *
from Time.Time import *
class Repo():
"""
This class contains the most important methonds
"""
def __init__(self,filename):
"""
The initialization function
:param filename: the name of the file you want to take the information
"""
self.filename=filename
def get_all(self):
"""
This function reads all lines from a file
It grpups in in object Logare that is build from date,type and melldung
date and melldung are classes also
:return: a list that contains all information from file
"""
rez=[]
f=open(self.filename,'r')
for line in f:
tolks=line.split(' ',3)
date=tolks[0].split('-',2)
time=tolks[1].split(':',2)
melldung=tolks[3].split(':')
final=melldung[1].split('-')
#date(date[0],date[1],date[2])
#time()
rez.append(Logare(date,time,tolks[2],Melldung(melldung[0],final[0],final[1],melldung[2])))
return rez
В функции get_all() Я построил список, чем я послал его к контроллеру где i haev функция
Вы можете разместить трассировку стека для исключения? – TemporalWolf
'for el in list' вы имеете в виду' for el in l' здесь, я думаю EDIT: nvm, но не называю вещи 'list', это встроенный –
Несвязанный: Плохая идея перезаписать встроенные модули вроде [ list] (https://docs.python.org/3/library/functions.html#func-list) и [type] (https://docs.python.org/3/library/functions.html#type) , – Matthias