Python
Tipps und Tricks zur Programmiersprache Python
ZODB: aktuelle Connection ermitteln und synchronisieren
In manchen Fällen, hat man langlaufende Prozesse, die Änderungen der ZODB mitbekommen sollen. Dies geschieht normaler Weise beim Begin einer Transaction.
python-profiler für python2.4 unter Debian Squeeze
Da man für manche Pakete wie z.B. Plone 3 noch python2.4 benötigt, sei hier kurz erklärt wie man python-profile, welches zum testen benötigt wird installiert.
Autovervollständigung in der Standard Python-Shell
Autovervollständigung und persistente History in der Standard Python-Shell aktivieren.
Python: erster Tag des Vormonats
Ein kleines Beispiel, wie man mit Python den ersten Tag des vorherigen Monats berechnen kann.
Optionale Abhängigkeiten in Python Packages
Über die "install_requires" in der "setup.py" können Abhängigkeiten zu anderen Python-Packages definiert werden, diese werden dann automatisch mit installiert. Wenn Packages aber nur optional verwendet werden sollen, definiert man sie als "extras_require" und überlässt es dem Anwender diese mit zu installieren.
Inhalte in Plone anlegen oder manipulieren mit einem Python-Skript
Um schnell mal Inhalte in Plone anzulegen oder zu manipulieren, kann man sich eines Script (Python) im Zope Management Interface (ZMI) bedienen.
Buildout Macros
Ab der Version 1.4 von zc.buildout, ist es möglich Macros von Sektionen zu verwenden. Hiermit können auf einfache Weise Sektionen geklont und nur die nötigen Werte angepasst werden.
Python Packages releasen mit zest.releaser
Releasemanagement mit zest.releaser ist sehr einfach und komfortabel. Unterstützt werden eine Reihe von VC-Systemen wie z.B. SVN, Mercurial und Bazaar. Auf einfache Art und Weise ist es so möglich seine Packages im PyPi (Python Package Index) zu veröffentlichen.
Doppelte Log Einträge im Python logging Modul
Bei einem log Befehl wird der Text mehrfach dargestellt.
Zope Events selbst auslösen
Zope Events ermöglichen es auf bestimmte Aktionen zu reagieren. Hin und wieder möchte man selbst ein Event für ein Objekt auslösen...
PIL.Image IOError: decoder jpeg not available
Bei einem Buildout kommt manchmal die obige Fehlermeldung. Sie deutet darauf hin, dass beim Compilieren von PIL die libjpeg nicht verfügbar war.
[Errno 13] Permission denied: '/root/.python-eggs'
Wenn man als root eine Instanz startet, kommt durch manche Pakete eine fehlermeldung: Can't extract file(s) to egg cache The following error occurred while trying to extract file(s) to the Python egg cache: [Errno 13] Permission denied: '/root/.python-eggs' The Python egg cache directory is currently set to: /root/.python-eggs
CDB Datenbank-Dateien mit python-cdb
Anlegen und verwenden von CDB-Datenbank-Dateien mit python-cdb.

