Hallo,
Ich habe mich länger nicht mit Python beschäftigt, würde aber gerne einen Ratschlag bekommen, mit welcher Methode ich am einfachsten
Daten aus einer Textdatei auslese in einer Tabelle einfüge die ich nach Änderungen in einer Datenbank abspeichere. Die Daten in der Textdatei sind so vorhanden:
001
01Müller
02Peter
045
0523
07129350;25456
0025
01Meier
02Paul
043
0512
0738000;12500
00..
01..
.....
Die beiden erste Ziffern haben jeweils folgende Bedeutung und wären die entsprechenden Feldnamen, wobei die Punkte in 2 Feldern aufgeteilt werden müssen.
00 ID Nr.
01 Name
02 Vorname
04 Klassenzugehörigkeitscode
05 Vereinsnummer
07 Punkte insgesamt;Punkte laufend
Ich habe dies vor sehr langer Zeit mit VB2003 gemacht, wobei ich die Zeilen mit readline ausgelesen habe und
jeweils als Eigenschaft in MitgliederObjekte gespeichert habe.
Erscheint mir aus heutiger Sicht etwas zu aufwendig. Gibtes einen einfacheren Weg?
LG Gerhardus
spezielles Textfile auslesen
@Gerhardus: Ich würde die Zeilen in Kennziffern und Rest trennen und dann nach Blöcken die mit '00' beginnen gruppieren. Falls Datenbank hier eine relationale Datenbank die von SQLAlchemy unterstützt wird, gemeint ist, würde ich das ORM von SQLAlchemy verwenden. Dann kann man mit einer Abbildung von Kennnummer auf Datentyp/Konvertierungsfunktion und Zielschlüssel die einzelnen Blöcke auf Wörterbücher abbilden die man dann als Argumente zum Erstellen von den ORM-Objekten verwenden kann, um die dann in der Datenbank zu speichern.
'07' müsste man irgendwo besonders behandeln, weil es ja auf zwei Attribute aufgeteilt werden müsste. Das könnte man in einer überschriebenen `__init__()` bei der ORM-Klasse erledigen.
'07' müsste man irgendwo besonders behandeln, weil es ja auf zwei Attribute aufgeteilt werden müsste. Das könnte man in einer überschriebenen `__init__()` bei der ORM-Klasse erledigen.