Benutzer-Werkzeuge

Webseiten-Werkzeuge


edu:python

Python

Python ist eine einfache aber mächtige Programmiersprache, die sich besonders für die Programmierung des Raspberry Pi, für die Systemadministration oder Webanwendungen eignet. In einem Artikel schreibt Guido van Rossum (Erfinder der Sprache) über die Entstehungsgeschichte von Python. Aktuell ist die Version 3, obwohl auch die ältere Version 2.7 noch häufig verwendet wird. Wir konzentrieren uns jedoch auf die neuere Version 3.1)

Installation

Python 3 kann von der Webseite heruntergeladen und installiert werden.

Wichtig Setze bei der Installation unter Windows den Haken bei „Add Python to Path“. Damit wird python.exe dem Pfad hinzugefügt, in dem Windows nach ausführbaren Dateien sucht und der Befehl kann in der Eingabeaufforderung direkt eingegeben werden. Wenn du dies vergessen hast, deinstalliere Python und installiere es erneut.

Alles hat geklappt, wenn bei den Programmen „IDLE (Python)“ auftaucht und in einem Fenster der Eingabeaufforderung „python“ ausgeführt werden kann. Sollte letzteres nicht klappen, so kann alternativ der „Python Launcher“ mit dem Aufruf von „py“ Python starten.

Erste Schritte

Einführungskurs: Erste Schritte in Python

Hilfe erhalten

Wenn du den Kurs von cscircles erfolgreich beendet hast, bietet Jetbrains mit PyCharm-Edu einen mächtiger Editor inkl. einem eingebauten Einsteigerkurs an. Probiere ihn aus.

Die wichtigsten Konzepte von Python kannst du bei Introduction to Python oben im Abschnitt Python Essentials nachschlagen. Hier findest du gute Zusammenfassungen mit Beispielen.

Python hat ein sehr gutes eingebautes Hilfesystem. Über den Befehl help() können für viele Module, Klassen und Befehle Informationen abgerufen werden. Probiere es z.B. mit help(print) einmal aus. Außerhalb von Python leistet pydoc3 Hilfestellung. So liefern die Befehle pydoc3 print oder unter Windows python -m pydoc print Hilfe zu der Funktion print. Mit pydoc3 -p 8080 kann sogar ein kleiner Webserver gestartet werden, der das Hilfesystem über den Browser zugänglich macht.

IRC-Chat und Forum

Wer schnell Hilfe von anderen Programmierern gekommen möchte, findet Unterstützung in einem der zahlreichen IRC-Kanäle, die über den Webchat von Freenode oder einen eigenen Client wie Thunderbird, mIRC (Windows) oder HexChat (Windows, Linux und OS X.) erreichbar sind. Hinter IRC verbirgt sich ein Chatprotokoll. Den Einstieg erleichtert ein Artikel von ubuntuusers.de.

Für Python sind der internationale Kanal #python oder der deutlich kleinere deutsche Kanal #python.de interessant. Für den Zugang zu #python muss der eigene Username zuerst registriert werden. Unter dem obigen Link gibt es eine Anleitung zu dem Prozess. Dann findet man im Kanal #python über 1000 Entwickler2), die weiterhelfen können. Für den Einstieg reicht aber sicher auch Blick in den deutschen Kanal.

Das deutsche Python Forum beantwortet seit 2002 Fragen rund um Python.

Bücher

Das deutsche Buch Python Crashkurs von Eric Matthes (622 Seiten, 32,90 €, dpunkt.verlag, ISBN Print3): 978-3-86490-444-8) dient als guter Einstieg in die Programmiersprache Python und enthält verschiedene Übungen und kleine Projekte zur Auflockerung. Es gibt neben der elektronischen Version auch eine gedruckte Version, welche ich empfehlen würde.

Das englische Buch The Hitchhiker’s Guide to Python! beschreibt ausführlich für Anfänger und Fortgeschrittene viele Python-Konzepte.

Das Buch Cracking Codes with Python stellt verschiedene Verschlüsselungsmethoden vor und zeigt, wie sich diese mit Python überwinden lassen. Man kann es kaufen oder online lesen.

Bevor du ein Buch kaufst, kannst du in der DigiBib recherchieren und prüfen, ob es in Büchereien in Bochum und Umgebung ausleihbar ist.

Vertiefungen

In diesem Wiki findest du noch weitere Programmierübungen, die du ausprobieren solltest.

Wie geht es weiter, wenn man alle Aufgaben erledigt hat? Auf der Seite gibt es Tipps für Fortgeschrittene mit Quellen für vertiefende Forschungen.

Das Python-Wiki gibt eine reichhaltige Auswahl deutschsprachiger Quellen für Videos, Tutorials, Foren, Bücher, etc.

Bei hackr.io gibt es in der Rubrik Python verschiedene Tutorials, die von den Nutzern beurteilt wurden. Darüber hinaus hilft es bei der Vermittlung von „programming buddies“, mit denen man gemeinsam lernen kann.

Auch Google bietet einen Programmierkurs für Python an: Google's Python Class. Beim MIT gibt es den Kurs Introduction to Computer Science and Programming.

Quelltext lesen

Ein weiterer Weg, um Python zu lernen, ist sicherlich das Lesen von gutem Quelltext. So kann man sich von erfahrenen Programmierern abschauen, wie sie ein Problem gelöst haben. Der Text Reading Great Code empfiehlt den Quelltext einiger Projekte. Dort wird z.B. howdoi erwähnt, das vom Umfang gering und überschaubar für den Einstieg ist. Auch die Standard-Bibliotheken von Python selbst bieten sich für ein Selbst-Studium an - Learn by reading code beschreibt interessante Module.

Das Buch Code The Classics stellt verschiedene klassische Computerspiele und deren neue Implementierung in Python vor.

Projekte

Python lernen

Entwicklungsumgebungen (IDEs)

  • Mit IDLE ist bereits eine einfache IDE in jeder Python-Installation integriert. Sie reicht für viele Projekte bereits aus. IDLE steht für Integrated DeveLopment Environment oder Integrated Development and Learning Environment.
  • Mu ist ein weiterer sehr einfacher und für Anfänger gut geeigneter Editor.
  • Thonny ist eine einfache Entwicklungsumgebung mit einem anschaulichen Debugger, die von der Universität Tartu in Estland entwickelt wird. Bei Fehlern werden typische Fehlerquellen genannt.
  • PyCharm von JetBrains ist eine professionelle IDE, die als kostenlose Community- oder kostenpflichtige Professional-Version erhältlich ist. Die IDE bietet eine aufgeräumte Oberfläche und sehr gute Unterstützung bei der Vervollständigung von Schlüsselwörtern und Umbenennung von Methoden, Klassen, Attributen, Variablen und Dateien. Unter dem folgenden Link kann eine kostenfreie Studentenlizenz der Professional-Version erworben werden, wenn bei der Registrierung die TBS1-Adresse verwendet wird.
  • Visual Studio Code ist ein leichtgewichtiger und freier Editor für Linux, Windows und MacOS mit einer mächtigen Integration für Python und andere Programmiersprachen. Mit VSCodium existiert eine Variante, die ohne Telemetrie und Microsoft-spezifische Anpassungen auskommt. Mit dem Plugin codetour können Touren durch den eigenen Quelltext aufgezeichnet werden.
  • GuiPy (Windows only) ist eine IDE mit Integration für GUI-Design und UML-Modellierung.
  • Sublime Text ist ein mächtiger und ressourcenschonender kommerzieller Editor, der frei genutzt werden kann. Er ist nicht nur für Python geeignet. Mehr Informationen gibt es unter dem Link.
  • Geany ist eine Mischung aus IDE und Texteditor. Nicht nur für Python ist das kleine aber feine und übersichtliche Programm geeignet. Auch Quelltexte anderer Programmiersprachen lassen sich gut damit bearbeiten.
    Damit der Editor für Python gut funktioniert sollten folgende Dinge konfiguriert werden:
    In den Einstellungen (unter Editor, Einrückung) den Typ auf „Leerzeichen“ stellen.
    Unterstützung für pep8 installieren (pip install pep8), damit der Befehl „Erstellen → Lint“ funktioniert.
  • ptpython ist eine mächtige Erweiterung der Konsole und kann mit pip install ptpython leicht installiert werden.
  • pudb ist ein einfacher grafischer Debugger für die Konsole. Hiermit können Programme schrittweise ausgeführt werden.
  • nano ist ein einfacher Editor für Linux und den Raspberry Pi. Damit in Python-Dateien die Tabs durch vier Leerzeichen ersetzt werden, muss nano mit nano -ET4 datei.py gestartet werden.
  • repl.it ist eine einfache Online-Programmierumgebung. Sie läuft vollständig im Browser und kann auch in anderen Webseiten eigebunden werden.
  • Project Jupyter ist eine Weboberfläche, in der Python-Quelltext mit Text gemischt und in sogenannten Notebooks abgelegt werden kann. Die Installation kann einfach über pip erfolgen.
  • Eric ist eine einfache IDE für Python mit der Projekte verwaltet und GUIs mit Qt erstellt werden können.
  • TigerJython ist eine in Java geschriebene IDE für die Python-Programmierung. Die Seite bietet auch ein Skript und ein Online-Tutorial.
  • LiClipse verbindet Eclipse und PyDev zu einer IDE.
  • Wing ist eine weitere professionelle Entwicklungsumgebung, die es in kostenpflichtigen und auch kostenfreien Varianten gibt.
  • Mit flet lassen sich Desktop- und Web-Anwendungen (inklusive PWA) mit Python erstellen.
  • Brython ist eine JavaScript-Bibliothek, die Python im Browser ausführen kann (länger nicht mehr aktualisiert).
  • Skulpt ermöglicht es, einen Python-Interpreter auf einer Webseite einzubinden. Der Dienst tinket.io nutzt dies z.B.
  • Bei RobotGame müssen kleine Roboter in Python programmiert werden, die dann gegeneinander im Wettstreit antreten. Leider scheint das Projekt derzeit (Oktober, 2019) nicht aktiv weiterentwickelt zu werden.
  • Webanwendungen lassen sich in Python z.B. mit Bottle, Flask, CherryPy, oder JustPy erstellen.
  • wtfpython stellt verwunderliches Verhalten von Python vor und erklärt es.
  • Donkeycar ermöglicht das Ansteuern von fernsteuerbaren Autos mit Python. Leider mit ~250 € recht teuer.
  • calmcode erklärt verschiedene Python-Bibliotheken in einer guten Mischung aus Texten und kurzen Videos.
1)
Die Unterschiede zwischen Version 2 und 3 sind in Anhang A der Seite „Invent With Python“ oder auf der Seite von Raspberry Pi dargestellt.
3)
ISBN Print: 978-3-86490-444-8
ISBN PDF: 978-3-96088-145-2
ISBN ePub: 978-3-96088-146-9
ISBN Mobi: 978-3-96088-147-6
edu/python.txt · Zuletzt geändert: 2024-06-03 10:05 von pintman