[python-users] Fußnotensotierung mit Python 3.0

Günter Jantzen guenter.jantzen at gmx.de
Mi Sep 10 01:06:29 CEST 2008


Hallo Tux,

Nachdem ich mit Vergnügen den spannenden Artikel gelesen habe, musste
ich es doch gleich selber einmal versuchen.

Ich habe Python 3.0 (gibt es erst als beta) verwendet, weil ich mich
beim Schreiben der print Statements nicht mehr um automatisch angehängte
Spaces oder Leerzeilen kümmern muss.

Ich habe nicht übertrieben optimiert (die Dateibehandlung ist zum
Beispiel schlicht), sondern vor allem Wert auf geeignete Datenstrukturen
gelegt.

Am Anfang baue ich in einem ersten Lauf Indexe für die gewünschten
Sortierungen auf, die ich im zweiten Lauf anwende. Bei der Sortierung
nach Referenzen reicht eigentlich ein Lauf. Aber ich fand es schön, dass
beide Fragestellungen in sehr ähnlicher Weise behandelt werden können.

Im zweiten Lauf, hoffe ich etwas Zeit dadurch zu sparen, dass ich die
Ersetzungen zu Fuß vornehme, anstatt reguläre Ausdrücke zu verwenden. 

Das Programm arbeitet zeilenweise und kommt so hoffentlich auch mit
großen Dateien zurechtkommt.

Freundliche Grüße
Günter Jantzen
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : footnotes.py
Dateityp    : text/x-python
Dateigröße  : 1999 bytes
Beschreibung: nicht verfügbar
URL         : <http://lists.uni-koeln.de/pipermail/python-users/attachments/20080910/b8a25e70/attachment.py>
-------------- nächster Teil --------------
A great brown fox [13] jumped of a pile of lorem ipsum [4], [7]. He met
with a silver penguin, browsing the Linux Kernel Mailinglist [3]. They
debated other the question whether to start a C-program with "main
(int argc, char **argv)" or with "main (int argc, char *argv[])".
Square brackets annoyed them [9999]. A repeated index [4].
@footnote:
[13] Al Fabetus: "On characters and animals", 1888, self published.
[4] Lorem Ipsum, <a href="http://en.wikipedia.org/wiki/Lorem_ipsum">Web Link</a>
[9999] Annoying Link.
[7] B. Fox: "More on Blind Text".
[3] Linux Kernel Maintainers: LKML



Mehr Informationen über die Mailingliste python-users