Kontakt aufnehmen

Python-Programmierung – Tutorial, Tipps & Tricks

Python ist in vielen Kreisen von Webprogrammierern noch immer ein Mysterium und findet leider immer noch zu wenig Anwendung. Zu unrecht, denn hinter dem unscheinbaren Namen versteckt sich eine relativ einfache Syntax, umfangreiche Programmiermöglichkeiten und eine große Zahl an Modulen und Funktionen.

Allgemeines

Python ist eine portable, interpretierte, Objektorientierte Programmiersprache. Sie wurde Anfang der 90er von Guido van Rossum am "Centrum voor Wiskunde en Informatica" (Zentrum für Informationskunde) in den Niederlanden entwickelt. Van Rossum ist noch immer Python 's Haupt-Autor, es enthält aber auch viele Beiträge anderer.
Die Sprache hat eine elegante (aber nicht über-vereinfachte) Syntax; zudem einige mächtige high-level Datentypen sind eingebaut. Python kann systematisch durch Module erweitert werden, welche entweder in Python oder aber auch in einer kompilierten Sprache wie C oder C++ geschrieben werden können. Module können neue Funktionen, Klassen und Variablen bereitstellen.
Standardmäßig steht schon eine große Anzahl von Modulen zur Verfügung, von Regular Expressions über Zugriff auf Betriebssystemfunktionen (z.B. Threading) bis zu Netzwerksupport ( HTTP , XML-RPC, ...). Zusätzlich sind jede Menge Module verfügbar, die nicht im Standardumfang enthalten sind, wie etwa die Python Imaging Library.
Der Python-Interpreter kann auch in eigene Programme eingebettet werden, um diese mit einer Programmiersprache zu versehen. Beispiele dafür sind Emacs Lisp oder Visual Basic for Applications.
Python wird mit den meisten Linux-Distributionen standardmässig mitgeliefert, für Windows und Mac OS X werden Installer angeboten. Während "Standard"- Python in C implementiert ist, existiert auch eine in Java implementierte Variante namens Jython, die es ermöglicht, Python-Programme auf jeder Java-fähigen Plattform auszuführen.
Mit Python wird keine Entwicklungsumgebung mitgeliefert, es gibt aber eine Reihe von Editoren und Programmen die Python unterstützen.
Python hat als Allzweckprogrammiersprache vielfältige Einsatzmöglichkeiten; größere, bekanntere in Python implementierte Anwendungen sind z.B. der Mailing-Listen-Manager Mailman (http://www.list.org/) und der Applikationsserver Zope (http://www.zope.org/). Python lässt sich serverseitig als CGI-Script oder in den Apache-Webserver eingettet einsetzen, was gegenüber CGI Geschwindigkeitsvorteile bringt.

Syntax

Ein Gefühl für eine neue Programmiersprache bekommt man wohl am besten anhand von erklärtem Beispielcode. Hier also erstmal das unvermeidliche "'Hello World! "'-Programm:

print "Hello World!" # Ein Kommentar

Viel gibt es bei diesem Einzeiler noch nicht viel zu erklären; Strings (Text) werden in Python mit " oder ' begrenzt, Kommentare mit # eingeleitet und vom Ende der Zeile begrenzt.
print ist ein Python-Schlüsselwort und gibt die übergebenen Parameter, also alles was danach kommt, von einem Zeilenumbruch gefolgt aus.

Blöcke

Der Doppelpunkt ist in Python das Zeichen für einen Block-Beginn, wobei der Block durch die Einrückung definiert wird. Ein Block faßt eine Anzahl von Anweisungen zusammen und ermöglicht so strukturiertes Programmieren, z.B. von einer Bedingung:

if machePruefung:
    Befehl1
    Befehl2 

Typen

Python besitzt eine dynamische Typenbindung, das heißt der Variablentyp muss nicht extra deklariert werden und wird implizit durch die Zuweisung festgelegt. Der einer Variablen kann sich auch ändern, auch wenn das meist nicht als besonders sauberer Programmierstil betrachtet wird. Beispiel:

foo = 1          # foo hat jetzt den Typ 'Integer'
foo = 'A String' # foo hat jetzt den Typ 'String'

Datentypen

Python besitzt eine dynamische Typenbindung, das heißt der Variablentyp muss nicht extra deklariert werden und wird implizit durch die Zuweisung festgelegt. Der einer Variablen kann sich auch ändern, auch wenn das meist nicht als besonders sauberer Programmierstil betrachtet wird.

Variablen und Operatoren

Genau wie die Mathematik kommt auch die Informatik ohne Platzhalter, die sogenannten Variablen, nicht weit.

Kontrollstrukturen

Python stellt eine ganze Reihe von Kontrollstrukturen zur Verfügung mit denen der Programmablauf kontrolliert und gesteuert werden kann.

Objektorientierte Programmierung

Python unterstützt natürlich Objektorientierte Programmierung (OOP) (u.a. Polymorphie, (Mehrfach-) Vererbung, …). Hier erst einmal kurzes Beispiel, um ein Gefühl dafür zu vermitteln, wie OOP in Python aussieht.

CGI-Programmierung

Mit dem Modul cgi steht standardmäßig ein relativ komfortables Interface zur CGI-Programmierung zur Verfügung. Es unterstützt den Programmierer insbesondere bei der Auswertung der Felder von Eingabemasken. Das Folgende Skript erzeugt eine Maske, bzw. gibt deren Inhalt aus:

Web-Frameworks

Für kleinere Anwendungen und “Quick Hacks” ist CGI-Programmierung mit dem cgi-Modul und dem DB API sicher gut geeignet, wer jedoch größere Web-Anwendungen entwickeln will, sollte einen Blick auf die verschiedenen Web-Frameworks für Python werfen; der folgende Abschnitt soll einen kurzen Überblick über zwei solche Frameworks geben. Den Frameworks gemeinsam ist die Einführung eines Templating System, mit dessen Hilfe HTML-Code einfacher und komfortabler generiert werden kann als mit dem Python ‘s eingebautem %-Operator.

Du arbeitest in einer Agentur oder als Freelancer?
Dann wirf doch mal einen Blick auf unsere Software FeatValue.

Weiterlesen: ⯈ CGI

Über uns

Stefan Wienströer

Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project

Cookie-Einstellungen

Helfen Sie dabei, uns noch besser zu machen. Wir nutzen Cookies und ähnliche Technologien, um die Website auf Ihre Bedürfnisse anzupassen. Zur Datenschutzerklärung

Auswahl speichern