Python Module
Python Module
Die Sprache Python wird mit einer Menge von Modulen geliefert, die Python-Programmen einen großen Funktionsumfang bereitstellen. Jedes Modul ist eine Sammlung von Python-Funktionen, Daten und Klassen zu einem bestimmten Zweck, wie beispielsweise mathematische Berechnungen oder reguläre Ausdrücke.
Verschiedene Module, wie ’math’ oder
’string’, sind standardmäßig in Python-Ausdrücken
verfügbar. Beispielsweise kann der Wert von ( aus dem
’math’-Modul ausgelesen werden mit
’python:math.pi’. Um von einem Pfad-Ausdruck darauf
zuzugreifen, muß aber die ’modules’-Variable
verwendet werden. Die Formulierung lautet
’modules/math/pi’. In „The Zope Book“ oder
entsprechenden DTML-Tutorials findet sich mehr
Information zu diesem Thema.
Das ’string’-Module ist in Python-Ausdrücken
durch die ’string’-Ausdruckstyp Funktion verdeckt,
also muß hier nicht über die ’modules’-Variable
zugegriffen werden. Dies kann direkt in dem Ausdruck geschehen,
in dem es verwendet wird. Oder man deklariert eine globale
Variable wie folgt:
tal:define=“global mstring modules/string“
tal:replace=”python:mstring.join(slist, ‘;’)”
Module können in Pakete (packages) zusammengefaßt werden. Dies ist einfach eine Möglichkeit, zusammengehörige Module zu gruppieren und zu benennen. Zum Beispiel sind alle Python-basierten Skripte in Zope in einem Unterpaket „PythonScripts“ des Pakets „Products“ zusammengefaßt. Insbesondere bietet das Standard-Modul in diesem Paket eine Reihe nützlicher Formattierungsfunktionen die im DTML-Var-Tag standard sind. Der vollständige Name dieses Moduls ist „Products.PythonScripts.standard“. Mit den folgenden Anweisungen kann also darauf zugegriffen werden:
tal:define=“pps
modules/Products/PythonScripts.standard“
tal:define=”pps
python:modules[‘Products.PythonScripts.standard’]
Auf die meisten Python-Module kann über Page Templates, DTML oder Skripte solange nicht zugegriffen werden, bis ihnen Sicherheitserklärungen („security assertions“) hinzugefügt worden sind. Dies übersteigt jedoch den Umfang dieses Dokuments und wird im „Zope Security Guide“ erläutert.






