Einführung

Möglichst schnell und einfach sollte seine neue Programmiersprache sein. Das war eines der wesentlichen Ziele von Guido van Rossum, als er Anfang der 1990er Jahre am Zentrum für Mathematik und Informatik (Centrum voor Wiskunde en Informatica) in Amsterdam Python entwarf. Python ist einfach, weil es mit erstaunlich wenigen Schlüsselwörtern auskommt und seine Syntax auf Übersichtlichkeit optimiert ist. Python ist auch schnell, weil der Code eines Python-Programmes automatisch in einen Zwischencode übersetzt wird, der dann vom Interpreter ausgeführt wird.
Python ist eine Programmiersprache, die mehrere Programmierparadigmen ermöglicht, d.h. es wird die objektorientierte, die funktionale und die aspektorientierte Programmierung unterstützt.

Auch Programme in anderen Sprachen lassen sich einfach als Module in Python einbetten. So kann man beispielsweise zeitkritische Algorithmen in C programmieren und sie dann in Python einbinden.

box Python kann auch als Skriptsprache für andere Programme dienen, wie z.B. OpenOffice und Gimp.

Seine umfangreiche Standardbibliothek ist eine weitere Stärke von Python. Größtenteils sind diese auch plattformunabhängig, d.h. Python-Skripte können unverändert unter Unix, Linux, Windows, Mac OS X und anderen Plattformen laufen. Module der Standardbibliothek sind einerseits in Python selbst aber auch in C geschrieben.

Es gibt spezielle Module, die auf Internet-Anwendungen hin optimiert sind, Module für grafische Schnittstellen, Datenbanken und reguläre Ausdrücke.

Python kann auch mit TK (mit dem Modul Tkinter) als Ersatz für Tcl benutzt werden. Dadurch lassen sich einfach und schnell grafische Oberflächen erzeugen.

Online Kurs

In unserem Tutorial finden Sie eine komplette Einführung in Python mit Schwerpunkten zu verschiedenen Gebieten:

  • Das erste Kapitel beschäftigt sich mit der Entstehung der der Philosophie von Python: Geschichte von Python
  • Dann zeigen wir, wie man sehr schnell mit der interaktiven Shell erste kleine Erfolge verbuchen kann: Interaktiver Modus
  • Wie lässt sich Code ausführen und was passiert hinter den Kulissen von Python?
  • Python hat einen unorthodoxen Stil seine Skripte in Blöcke zu strukturieren.
  • Auch bei den Datentypen und Variablen ist vieles anders aber vor allen Dingen klarer als in anderen Programmiersprachen.
  • Die Operatoren sind hingegen so, wie man sie kennt und erwartet.
  • Wenn es ums Kopieren von Listen und anderen Datenstrukturen geht, machen Anfänger gerne mal Fehler. Deshalb lohnt sich ein Blick in unser Kapitel "Flaches und tiefes Kopieren" in unserem Tutorial.
  • Bedingte Anweisungen sind in Python so, wie man sie aus den meisten anderen Sprachen kennt.
  • Die while-Schleife ist wie gewohnt. Allerdings hat sie mit dem optionalen else-Zweig ein Feature was gerne übersehen und unterschätzt wird.
  • Die for-Schleife ähnelt der for-Schleife, wie man sie aus der Bash-Shell kennt.

Weitere Themen

  • Python brilliert durch die Klarheit und Konsequenz mit der Sequentielle Datentypen wie Strings, Listen und Tupel einheitlich behandelt werden.
  • Hashes oder assoziative Arrays kennt man in Python als Dictionaries
  • Die Funktionen zeichnen sich auch durch eine einfache und leicht zugängliche Syntax aus.
  • Wie sieht die Parameterübergabe in Python aus? Wertübergabe (Call by Value) oder Referenzübergabe (Call by Reference)?
  • Um Namensräume und Gültigkeitsbereiche von Variablen geht es in unserem Kapitel "Globale und lokale Variablen"
  • Fast alle größeren Skripte und Programme müssen lesend und schreibend auf Dateien zugreifen können.
  • Dann können Sie lernen, wie einfach man Module und Pakete in Python erstellen kann.
  • Neuer Beitrag: Wir zeigen Ihnen, dass Lambda-Operator, filter, reduce und map gar nicht so kompliziert wie ihr Ruf sind.
  • Neuer Beitrag: Einfacher als mit "Lambda und Co." geht es natürlich mit der List Comprehension (Listen-Abstraktion
  • Überarbeitet: Generatoren schrecken viele ab, weil sie so abstrakt klingen, aber wie zeigen mit einfachen Beispielen, wie man sie lieben lernt.
  • Da Python eine objektorientierte Programmiersprache ist, darf natürlich ein Kaptitel hierzu nicht fehlen: Klassen

Beispiele

Es folgt ein einfaches Beispiel, das die Arbeitsweise der while-Schleife illustriert. Berechnet wird die Summe der ersten hundert Zahlen:

n = 100

sum = 0
i = 1
while i <= n:
    sum = sum + i
    i = i + 1

print "Summe von 1 bis %d: %d" % (n,sum)

Die Fakultätsfunktion in Python:
def fakultaet(x):
    if x > 1:  
        return x * fakultaet(x - 1)
    else:  
        return 1
Wie einfach sich Generatoren schreiben lassen, sieht man im folgenden Beispiel. Dieser Generator erzeugt Iteratoren, welche die Fibonacci-Zahlen erzeugen:
def fibonacci():
    """Fibonacci-Zahlen-Generator"""
    a, b = 0, 1
    while True:
        yield a
        a, b = b, a + b