Eine der Stärken von Python ist die Möglichkeit, bestehende C- und C++-Bibliotheken zu verwenden. Dazu müssen sog. Bindings für Python entwickelt werden, welche die C/C++-API dann in Python zur Verfügung stellen. Obwohl das in Python einfacher ist als z.B. in Perl, kann es gerade bei umfangreichen Bibliotheken aufwändig und fehleranfällig sein. Zum Glück gibt es aber nützliche Tools, die einem dabei helfen. Eins davon, SIP, ist jetzt in Version 4.0 erschienen, welche viele neue Features beinhaltet. Mit SIP werden z.B. die Python-Bindings für die Qt-GUI-Bibliothek erzeugt. Mehr dazu unter [1]. Was es sonst noch neues in der Python-Welt gibt, können Sie in den folgenden News lesen.
PyRepl
Trotz des Siegeszugs von grafischen Oberflächen spielt unter Linux und Unix die Kommandozeile nach wie vor eine große Rolle. Wer mit Python Anwendungen schreibt, die per Kommandozeile zu bedienen sein sollen, der schaue sich mal
PyRepl [2] an. Es bietet viele interessante Features für Kommandozeilen-Programme wie z. B. Historie von eingegebenen Kommandos oder Vervollständigung von Befehlen. Es muss nicht immer ein GUI sein!
PyORQ
Python bietet Module für den Zugriff auf alle gängigen Datenbanken. Und auch wenn die Benutzung von relationalen Datenbanken zusammen mit Python nicht schwer ist, wäre es manchmal schön, das ganze mehr objektorientiert zu gestalten und sich nicht mit Tabellen und SQL beschäftigen zu müssen. Hier hilft
PyORQ. Es ermöglicht das Speichern und Abfragen von Python-Objekten in relationalen Datenbanken. Man kann mit Python-Ausdrücken Datenbanken abfragen und braucht so kein SQL mehr zu verwenden. Momentan werden SQLite, MySQL und PostgreSQL unterstützt. Mehr dazu unter [3].
XMLObject
Bei diesem Projekt geht es nicht wie im vorherigen um die Beziehungen von Python-Objekten zu relationalen Datenbanken, sondern zu XML. Mit
XMLObject kann man Python-Objekte in XML abbilden und ungekehrt ist dies auch möglich. Das ist nicht immer die optimale Lösungen für den Umgang mit XML, aber oft viel einfacher und bequemer zu benutzen als z.B. DOM, was zwar sehr verbreitet ist, aber nicht immer zur guten Laune der Entwickler beigetragen hat. Mehr zu
XMLObject finden Sie unter [4].
Python GUI-API
Python besitzt Bindings zu den meisten gängigen GUI-Bibliotheken wie TK, Qt, Gtk+ oder wxWidgets. Das Projekt
Python GUI-API verfolgt einen ähnlichen Zweck wie wxWidgets.
PyGUI soll auf Macintosh, Windows und Unix/Linux laufen. Unter Linux baut
PyGUI dazu auf
PyGtk-2.2-0 oder neuer auf. Das ganze ist ein sehr interessantes Projekt und erleichtert hoffentlich die Erstellung von umfangreichen und komplexen GUI-Anwendungen, welche auf unterschiedlichen Plattformen laufen müssen. Python hat hier viel zu bieten und mit
PyGUI findet Python hoffentlich noch mehr Verbreitung in diesem Bereich. [5]
xmlapi
Für Python gibt es viele verschieden Module zur XML-Verarbeitung.
xmlapi ist ein neues Modul, welches nach eigenen Aussagen noch kleiner ist als Pythons Standard-DOM-API
xml.dom.minidom. Es soll leicht zu benutzen und schneller als das Modul aus der Standard-Bibliothek sein. Außerdem stellt es noch weitere Features zur Verfügung. Mehr dazu auf der Website des Projektes [6].
config-py
Der Ablauf von Python-Programmen lässt sich oft durch Konfigurationsdateien steuern. Der Entwickler steht dann oft vor der Frage, wie er diese Konfigurationsdatei strukturieren und aufbauen soll. Den goldenen Weg dafür gibt es leider nicht, aber
config-py könnte hier eine große Hilfe sein. Die Konfigurationsdateien basieren bei
config-py auf Python selbst, was das ganze nicht nur einfach, sondern auch sehr mächtig macht. Ein sehr interessantes und bestimmt sehr nützliches Modul [7].
Markus Jais ist Software-Entwickler. In seiner Freizeit trifft er sich mit Freunden, geht Wandern und beschäftigt sich mit Ruby, Perl, Python, Java, PHP, XML, MySQL, PostgreSQL und lernt Spanisch und Französisch. Im Internet ist er unter www.mjais.de/ zu finden. Links