Python-Programmierung
Aus Wikibooks
| ACHTUNG: Dieser Artikel bedarf dringend einer Überarbeitung oder Erweiterung. Wenn du Lust hast, beteilige dich daran! |
Inhaltsverzeichnis |
[Bearbeiten] Zusammenfassung des Projekts
- Zielgruppe: Anfänger, Fortgeschrittene und Profis in Python. Vorkenntnisse in anderen Programmiersprachen sind hilfreich, werden jedoch nicht vorausgesetzt.
- Lernziele: Dieses Buch soll seinem Lesern ein umfassendes Wissen über die Programmiersprache Python vermitteln. Der Schwerpunkt soll dabei, in Abgrenzung zu den anderen beiden Büchern Python unter Linux und Python Referenz, in der Beschreibung der Konzepte und Pythondenkweise (Zen of Python) liegen.
- Momentaner Stand: Unlesbar. aber: das Buch wird gegenwärtig wieder überarbeitet.
- Buchpatenschaft / Ansprechperson: Jrobln ggf. auch bitte an Benutzer:Schmidt2 wenden, der das Buch Python unter Linux bearbeitet.
- Sind Co-Autoren gegenwärtig erwünscht? Im Moment dürfte das Buch frei zur Bearbeitung sein, für mehr als kleine Änderungen aber bitte die Seite Python-Programmierung: TODO anlegen, und zusammentragen was noch gemacht werden muss.
- Richtlinien für Co-Autoren: Bitte vorab kurz abstimmen, was Du vorhast.
- Projektumfang und Abgrenzung zu anderen Wikibooks: Das Buch soll vollständig die grundlegenden Konzepte abdecken, ohne sich zu sehr in Details zu verlieren, die man anderswo nachlesen kann, wenn das Prinzip verstanden wurde. Es gibt mittlerweile die
Python-Referenz und
Python unter Linux. - Themenbeschreibung: Die Syntax und Semantik von Python werden beschrieben und anhand von Beispielen verdeutlicht. Dabei werden allgemeine Programmier-Konzepte vermittelt, die dem Grundstudium der Informatik entlehnt sind. Besonderes hervogehoben werden die Eigenheiten von Python, um den Lesern die Abgrenzung zu gängigen Programmiersprachen zu verdeutlichen.
[Bearbeiten] Warum Python?
Python ist eine vielseitig einsetzbare und leicht erlernbare Programmiersprache, die mit wenigen Grundregeln ein Maximum an Nutzen erschließt. Python wurde mit dem Ziel entworfen, möglichst einfach und übersichtlich zu sein. Sie ist daher auch hervoragend für Programmieranfänger geeignet. Durch die Möglichkeit, auch Programme anderer Sprachen als Modul einzubetten, erschließen sich zahlreiche Möglichkeiten. Bei Bedarf lassen sich so beispielsweise zeitkritische Teile durch maschinennah in C programmierte Routinen ersetzen, oder Python kann als Skriptsprache eines anderen Programms dienen (Beispiele: OpenOffice.org, Blender, Maya, PyMOL, SPSS und Gimp). Python ist eine Multiparadigmensprache. Das heißt, es zwingt den Programmierer nicht zu einem einzigen bestimmten Programmierparadigma, sondern erlaubt es, das für die jeweilige Aufgabe am besten geeignete Paradigma zu wählen. Objektorientierte und strukturierte Programmierung werden vollständig unterstützt, weiterhin gibt es Spracheigenschaften für funktionale und aspektorientierte Programmierung. Python verfügt über mächtige Funktionsbibliotheken für alle denkbaren Aufgabenstellungen und ist auf allen gängigen Betriebssystemen und Plattformen zuhause.
Die zum Python-Interpreter kompatiblen Betriebsysteme sind:
- Windows 2000/XP ...
- Mac OS X
- GNU/Linux
- Unixoide Systeme
Es gibt weitere implementierungen des Python-Interpreters auf den verschiedensten Plattformen:
- Eine Portierung auf das Symbian OS
- Ein Python Interpreter, welcher in Java Programmiert wurde um Python in die JRE zu integrieren
- Eine .net oder auch mono impementierung
- Eine Python Implementation für den Microcontroller namens PyMite
Python wird in größeren Projekten eingesetzt, unter anderem bei der NASA, im Zope-Server, bei Google und Youtube.
[Bearbeiten] Inhalt
- Einführung – Python in zehn Minuten, ein erster Überblick.
- Voraussetzungen (Installation etc.)
- Interaktive Nutzung („Taschenrechner“)
- Wie sehen Programme aus
- Einige IDEs zum Erstellen von Python-Code
- Grundlegende Sprachkonstrukte – Grundlagen der Sprache, einfache Programmierbeispiele
- Datentypen
- Operatoren

- Kontrollstrukturen

- Funktionen

- Klassen und Objekte
- Exceptions

- Listengeneratoren

- Iteratoren

- Generatorfunktionen

- Ausdrücke

- Python-Programmierung: Bibliotheken – eingebaute Module
- sys – Laufzeitumgebung

- os – Zugriff auf Funktionen des Betriebssystems

- time – Zeitfunktionen

- math – mathematische Funktionen

- random – Zufallsfunktionen

- pickle – Objektserealisierung

- re – Reguläre Ausdrücke

- urllib – Ab ins Internet

- cgi – dynamische Web-Programmierung

- socket – low-level Netzwerkprogrammierung

- GUI Programmierung
- threading – Threads

- multiprocessing – Multiprocessing

- sys – Laufzeitumgebung
- externe Module
- Übersicht über verfügbare GUI-Toolkits

- numpy – wissenschaftlisches Arbeiten in Python

- PIL – erzeugen und bearbeiten von Bildern

- Übersicht über verfügbare GUI-Toolkits
[Bearbeiten] Weblinks und Newsgroups
- Offizielle Homepage: python.org
- Übersetzung des offiziellen Tutorials der Version 3.1: tutorial.pocoo.org
- Deutsches Python-Forum: www.python-forum.de
- Deutsches Python Wiki: wiki.python.de
- deutschsprachige Links: python.org/doc/NonEnglish.html#german
- Python Moduldatenbanken: python.org/pypi, www.vex.net/parnassus
- Jython, eine Java-Implementierung von Python: www.jython.org
- IronPython, .NET-Implementierung: www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython