Home / LinuxUser / 2006 / 09 / Programmieren lernen in fünf Schritten

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(161 Punkte bei 4 Stimmen)
Mandriva in Nöten
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Einstieg in Python

Programmieren lernen in fünf Schritten

01.09.2006 Ob Sie nur ein kleines Administrationsskript entwickeln oder eine umfangreiche Anwendung entwickeln – mit Python geht beides leicht von der Hand.

Python ist vielseitig. Die Programmiersprache, deren Entwicklung Anfang der 90er Jahre ihren Anfang nahm, eignet sich gleichermaßen für kleine wie sehr große Projekte. Python gibt es für Linux, viele Unix-Derivate, Mac OS X, Windows und auch für Plattformen wie OS/2 oder Nokia-S60-Mobiltelefone.

Die Python-Standard-Distribution (CPython), die man von der Python-Website [1] herunterladen kann, enthält rund 350 Module, unter anderem zum Umgang mit Posix-Signalen und Threads, regulären Ausdrücken sowie zum Abrufen von Webseiten und Parsen von E-Mails. Ein Debugger zur Codeanalyse und ein Profiler zur Messung der Ausführungsgeschwindigkeit zählen zum Lieferumfang der Standard-Distribution. Neben einer ausführlichen, englischsprachigen Dokumentation [2] gibt es auch eine hervorragende Python-Kurzreferenz [3].

Im Internet finden sich viele weitere Bibliotheken, beispielsweise zur PDF-Erzeugung [6], zur Spieleprogrammierung [5] oder zum Erstellen spezieller Parser [4]. Eine umfangreiche Liste bietet der Python Package Index (PyPI) [11]. Es gibt Schnittstellen zu diversen GUI-Toolkits wie Tk [7], GTK [8], wxWindows [9] und Qt [10]. Abbildung 1 zeigt die in Python mit Tk geschriebenen Entwicklungsumgebung Idle.

Abbildung 1: IDLE, eine in Python mit der Tk-Bibliothek programmierte integrierte Entwicklungsumgebung. Je nach Linux-Distribution wird diese IDE zusammen mit Python oder aus einem getrennten Paket installiert.

Python eignet sich nicht nur zum Skripting, man kann damit auch umfangreiche Programme schreiben. Bei den Paketverwaltungstools von Gentoo Linux handelt es sich hauptsächlich um Python-Skripte. Bekannte Python-Anwendungen sind das Dateitransferprogramm BitTorrent, der Mailinglistenmanager Mailman, der Applikationsserver Zope, das Vektorgrafikprogramm Skencil und das Online-Spiel Eve.

Python lässt sich leicht erlernen und ermutigt zum Schreiben von gut verständlichem Code. Es räumt der Geschwindigkeit des Entwickelns den Vorrang gegenüber der Geschwindigkeit der Programmausführung ein. Das heißt aber nicht, dass Python-Programme grundsätzlich träge arbeiten: Die Struktur der Sprache erlaubt das Implementieren optimaler Algorithmen, zudem sind viele interne Python-Funktionen in C geschrieben.

Installation

Viele Linux-Distributionen richten Python bereits bei der Installation mit ein, so gut wie alle bieten es als Paket an. Um herauszufinden, ob Ihr System Python bereits mitbringt, geben Sie in der Shell den Befehl python -V ein. Ist Python eingerichtet, antwortet es mit der Ausgabe der Versionsnummer. Die aktuellste Version für den Produktionseinsatz trägt die Nummer 2.4.3.

Falls Sie eine Fehlermeldung erhalten, installieren Sie Python aus den Paketen Ihrer Distribution nach. Bei einigen Linux-Spielarten müssen Sie zur Einrichtung mancher Python-Erweiterungen zusätzliche Pakete installieren, die python-dev, python-headers oder ähnlich heißen.

Spielerei

Für erste Tests, aber auch zum Experimentieren während der Entwicklung, eignet sich der Python-Interpreter im interaktiven Modus (Listing 1). Geben Sie den Python-Code am Prompt >>> ein. Die Ellipse ... erzeugt der Python-Interpreter als Fortsetzungsprompt, bei der "0" am Ende des Listings handelt es sich um der Rückgabewert der Funktion os.system().

TIPP

Finden Sie Python im interaktiven Modus zu spartanisch, werfen Sie doch einmal einen Blick auf den Python-Interpreter IPython [12].

Listing 1

$ python
Python 2.4.2 (#1, Oct  4 2005, 21:25:43)
[GCC 3.3.6 (Gentoo 3.3.6, ssp-3.3.6-1.0, pie-8.7.8)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> print "Hallo Welt!"
Hallo Welt!
>>> for i in range(5):print i, # Einrueckung ist wichtig
…
0 1 2 3 4
>>> import os
>>> os.system("ls -l")
total 8
-rw-r--r-- 1 schwa schwa 1927 Apr  7 11:57 gliederung.otl
-rw-r--r-- 1 schwa schwa 3667 Apr 12 22:04 teil1.lmtxt
0

Wenn Sie möchten, können Sie den Python-Code auch in eine Textdatei (üblichweise mit Endung .py) schreiben und diese mit python datei.py ausführen. Alternativ geben Sie den Pfad zum Interpreter in der ersten Zeile der Datei an, machden sie mit chmod a+x datei.py ausführbar machen und starten das Skript mit Pfad /meine_datei.py.

Falls Sie in der Datei Umlaute oder andere Zeichen außerhalb des ASCII-Zeichensatzes verwenden, erhalten Sie eine Fehlermeldung. Geben Sie in einem solchen Fall zusätzlich das Encoding der Datei an:

#!/usr/bin/python
# encoding: iso-8859-1
Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

9296 Hits
Wertung: 102 Punkte (9 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...