BlackJack hat geschrieben:Besonders robust sieht das nicht aus. XML sollte man nur mit entsprechenden Bibliotheken bearbeiten und nicht per Zeichenkettenformatierung erstellen. Da braucht in der Beschreibung ja nur mal ein '<' auftauchen und schon ist das XML kaputt.
AFAIR wurde mir empfohlen, mit beautifulsoup zu arbeiten, Ich schau mir das mal genauer an.
Die `__init__()` hinterlässt das Objekt nicht in einem brauchbaren Zustand.
Kannst du das genauer erklären?
Nach dem `read()` wird die Datei nicht geschlossen.
Ups

Danke für den Hinweis.
Die Datei braucht auch nicht an das Objekt gebunden zu werden,
Mhh.. das stimmt. Scheint wohl noch ein Überbleisel von früher zu sein. Werde ich verbessern. Danke
ausserdem ist `xff_handler` ein schlechter Name für eine Datei.
Die Variable der Datei heisst xff_file
Parallele Listen für zusammengehörende Informationen zu verwalten ist immer etwas unschön.
Vorschlag für eine Alternative?
Da ist dann auch wieder ein `py_handler` als Name für eine Datei. `handler` sind Funktionen die etwas tun, keine Dateien.
Da wird doch die Funktion file() benutzt. Wo ist das Problem?
Wieso bekommt die `write()`-Methode alle Angaben als Argumente die eigentlich auf dem Objekt verfügbar sind.
[DURCHGESTRICHEN]Damit man write() benutzen kann, ohne gleich read() auch nutzen zu müssen. Allerdings könnte man da default-Werte zuweisen, das stimmt.[/DURCHGESTRICHEN]
Die sind nicht im Objekt verfügbar, sondern diese Tippt der Benutzer von Hand ein.
Das Argument `name` wird gar nicht benutzt.
Auch Überbleibsel. Danke.
Beim programmatischen erstellen von Quelltext gibt's das gleiche Problem wie bei dem XML oben: Lass man jemanden eine Beschreibung eingeben, die ein " enthält.
Könntest du mir eine Alternative angeben? Link zu einer Doku wie mans besser macht?
`check()` operiert nicht auf dem Objekt sondern liest nochmal die Datei ein, wobei nicht etwa `read()` aufgerufen wird, sondern der Quelltext da *nochmal* steht.
Das stimmt. Danke für den Hinweis, sinnvoll ist es wirklich nicht
Es wird auch unnötiger Gebrauch von ``exec()`` gemacht. Um den Namensraum zu füllen kann man auch einfach Objekte ohne den Umweg über ``exec`` in das Dictionary stecken.
Mir ist nicht bekannt, wie.
Formeln in MathML
Aha! Das klingt interessant. Kannst du mir mehr darüber erzählen / Wo kriege ich mehr Informationen?
und automatisches Umstellen nach den Grössen aus *einer* Formel, das wäre schön gewesen.

Wie soll denn das möglich sein?
Danke für dein ehrliches Feedback, ich werde versuchen, den Code möglichst zu verbessern.
Grüsse
Pot