ich bin gerade dabei Python zu lernen.
Derzeit möchte ich die Objektorientierung verstehen und schreibe einfache Klassen.
Jetzt bin ich bei einem Fehler, den ich derzeit nicht alleine beheben kann. Vielleicht könnt Ihr mir helfen.
Ich habe folgenden Code:
Code: Alles auswählen
class FileReader():
def __init__(self, dateipfad):
self.file = dateipfad
self.lst = []
def lines(self):
with open(self.file) as datei:
for line in datei:
strng = line.strip()
self.lst.append(strng)
return self.lst
class CsvReader(FileReader):
def __init__(self, dateipfad):
super().__init__(dateipfad)
self.oberliste = []
def lines(self):
super().lines(self)
for entry in self.lst:
print(entry)
f = CsvReader("datei.csv")
print(f.lines())
Daraufhin erscheint folgende Fehlermeldung:
Code: Alles auswählen
Traceback (most recent call last):
File "08AufgabeVererbung.py", line 27, in <module>
print(f.lines())
File "08AufgabeVererbung.py", line 20, in lines
super().lines(self)
TypeError: lines() takes 1 positional argument but 2 were given
Könnt Ihr mir da helfen?
Ich möchte im Grunde nichts anderes machen, als eine csv-Datei auslesen und diese in einer Liste ausgeben. Es steht in der Datei 3 Werte pro Zeile, die durch ein Komma getrennt sind.
Viele Grüße
tzabbi