Seite 1 von 1

Daten in xml oder Excel speichern

Verfasst: Mittwoch 12. Dezember 2007, 22:11
von feldmaus
Hi Alle,

eigentlich passt dieses Thema hhier nicht so richtig hin, aber es
gehört nunmal zu meinem Python Projekt.

Daher meine Frage, ob die Lagerung von Daten, aus der Sicht von Python eher in Xml oder in einer Excel Datei geschehen sollte?

Was bietet mehr Flexibilität?
Was könnte mehr Probleme bereiten?
Excel ist die übersichtlichere Variante, da xml ja nur ein Datenformat
darstellt.

Was ist schneller?

Grüsse Markus

Verfasst: Mittwoch 12. Dezember 2007, 22:25
von Leonidas
Lagerung von Daten aus der Sicht von Python: nicht in XML und schon gar nicht in XLS. Wie soll man denn XLS-Dateien unter Unices mit Python wieder aufmachen?

XML ist ähnlich schlimm, da ultra-verbose und eigentlich unnötig. Wenn es ein Textformat sein soll wäre eher YAML oder JSON eine Alternative, Binär kannst du `pickle` nehmen und wenn du es gerne durchsuchst dann kannst du auch `SQLite` verwenden.

Verfasst: Mittwoch 12. Dezember 2007, 22:54
von BlackJack
Ich denke es kommt auch darauf an was für Daten man Speichern will, wie sie strukturiert sind und wie man darauf zugreifen will.

Für irgend etwas hierarchisches ist Excel zum Beispiel unter jedem Betriebssystem und jeder Programmiersprache total ungeeignet.

Verfasst: Donnerstag 13. Dezember 2007, 00:22
von feldmaus
Leonidas hat geschrieben:Lagerung von Daten aus der Sicht von Python: nicht in XML und schon gar nicht in XLS. Wie soll man denn XLS-Dateien unter Unices mit Python wieder aufmachen?
Bin mir nicht sicher aber geht das nicht mit dem Modul "win32com.client " ?

Die Datensätze werden auf jeden Fall durch Algorithmen gezogen. Daher wäre eine flexible Zugriffsmethode schon erwünscht. Z.b. werden zufallsalgorithmen angewendet auf c.a. tausend Einträge auf einen Schlag.

Allerdings wäre ein Sqlite Server eher schlecht, da ich nicht jedem Benutzer ,der mein Projekt benutzt, anmuten kann einen sqlite Server zu installieren.

Und natürlich sollte python schon fertige und gut dokumentierte Routinen für diese Datenbank-Datei haben.

Die Routinen für YAML sind nicht standard mässig bei Python dabei oder?

Verfasst: Donnerstag 13. Dezember 2007, 00:56
von BlackJack
Nein unter Unix/Linux geht das nicht mit `win32com`. Wie der Name vielleicht schon vermuten lässt, ist das nur unter Windows verfügbar. Ausserdem braucht man dann selbst dort noch eine "Kleinigkeit": Excel.

Es gibt keinen SQLite-Server. SQLite ist eine "embedded"-Datenbank und ist ab Python 2.5 im Windows-Installer von Python enthalten.

Verfasst: Donnerstag 13. Dezember 2007, 01:31
von feldmaus
BlackJack hat geschrieben: Es gibt keinen SQLite-Server. SQLite ist eine "embedded"-Datenbank und ist ab Python 2.5 im Windows-Installer von Python enthalten.
Es ist also eine Datei-Datenbank oder benötigt es einen laufenden Daemon/Hintergrundprozess?

Und wie lässt sich eine sqlite Datei-Datenbank unter Linux durch-browsen?

Verfasst: Donnerstag 13. Dezember 2007, 08:24
von BlackJack
Es ist eine Ein-Datei-Datenbank. Die man auch so als eine Datei problemlos kopieren kann. Man braucht keinen Server. Nachteil ist natürlich das nicht so einfach mehrere Leute gleichzeitig auf eine Datenbank zugreifen können. Das ist ziemlich "grobkörnig" mit Dateisperren geregelt.

"Browsen" würde ich entweder mit dem Kommandozeilen-Programm `sqlite3` oder in einem der Programme, die versuchen Access (mehr schlecht als recht) nach zu eifern. In OpenOffice-Base müsste man die zum Beispiel anmelden können.

Verfasst: Donnerstag 13. Dezember 2007, 10:01
von feldmaus
BlackJack hat geschrieben:In OpenOffice-Base müsste man die zum Beispiel anmelden können.
Man kann also über Openoffice auf die sqlite zugreifen um sie dann z.b. in einem Tabellenprogramm wie Calc zu verarbeiten?

Verfasst: Freitag 14. Dezember 2007, 00:55
von Leonidas
feldmann_markus hat geschrieben:Man kann also über Openoffice auf die sqlite zugreifen um sie dann z.b. in einem Tabellenprogramm wie Calc zu verarbeiten?
Siehe OOo-Wiki.

Re: Daten in xml oder Excel speichern

Verfasst: Freitag 14. Dezember 2007, 23:06
von Mad-Marty
feldmann_markus hat geschrieben:Hi Alle,

eigentlich passt dieses Thema hhier nicht so richtig hin, aber es
gehört nunmal zu meinem Python Projekt.

Daher meine Frage, ob die Lagerung von Daten, aus der Sicht von Python eher in Xml oder in einer Excel Datei geschehen sollte?

Was bietet mehr Flexibilität?
Was könnte mehr Probleme bereiten?
Excel ist die übersichtlichere Variante, da xml ja nur ein Datenformat
darstellt.

Was ist schneller?

Grüsse Markus
Datenbank, Pickle, CSV

Excel nur als verteilung an irgendwelche Marketing Leute.

Re: Daten in xml oder Excel speichern

Verfasst: Samstag 15. Dezember 2007, 10:39
von midan23
Mad-Marty hat geschrieben:Excel nur als verteilung an irgendwelche Marketing Leute.
Und selbst das kann man sich schenken ... vorausgesetzt, der Dateityp .csv wurde Excel zugeordnet ...