Programmieren mit Python: Einführung in Python mit Beispiel Taschenrechner mit Expression Parser (mit grafischer Oberfläche!)
Copyright (for all Python pages!) ©, 2017, 2018-2023, Peter Sulzer, Fürth, Germany – all rights reserved

Programmieren mit Python

Python the one and only programming
language named after Monty Python!

Sie wollten schon immer mal programmieren, haben vielleicht schon früher mal in BASIC oder gar in C programmiert. Aber die heutigen Programmiersprachen und "Monster-Entwicklungsumgebungen" schrecken Sie ab. Dann versuchen Sie es doch mal mit Python (https://de.wikipedia.org/wiki/Python_(Programmiersprache).

Ein einfaches "Hello, world!" Programm mit grafischer Oberfläche (GUI - Graphical User Interface), dessen Fenster Sie verschieben, vergrößern können, das in der Titelleiste eine "Schließen-Schaltfläche" (Button) hat, ist in Python schnell geschrieben:

ACHTUNG: UNIX-Nutzer: Fügen Sie als erste Zeile (es darf nichts, nicht mal ein Leerzeichen davor kommen folgende Zeile ein:
#!/usr/bin/python3
Es kann trotzdem nicht funktionieren, falls ihr Python in einem anderen Verzeichnis installiert ist.
(Unter Ubuntu 20.04 LTS unter Windows WSL2 [Windows Subsystem for Linux 2] ist es #!/bin/python3)

1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  from tkinter import * import sys win=Tk() btnHello = Button( win, text= """ Hello, world!    Click to exit this application    """, command=sys.exit) btnHello.pack() win.mainloop()
Bereits nach dem Kapitel „Tischrechner mit GUI”, Zeitbedarf geschätzt 8 bis 20 Stunden (hängt von Ihnen ab), haben Sie folgenden kleinen „Tischrechner” entwickelt:
Thumbnail vom Rechner
Zum Vergrößern auf das Bild klicken

Wenn Sie dieses Programm unter dem Namen "hello.py", bzw. unter Windows besser den Namen hello.pyw verwenden(!), speichern (verwenden Sie Copy and Paste - aber achten Sie darauf, die Zeilennummern nicht mit zu kopieren!), dann können Sie dieses Programm durch Doppelklick auf den Dateinamen (z. B. im Windows Explorer) starten. Dazu müssen Sie vorher aber Python installiert haben (siehe unten). Falls das (Windows) nicht geht, manchmal „zickt” Python unter Windows, starten sie das Programm von der Kommandozeile aus. Starten Sie eine Kommandozeile (natürlich dürfen Sie auch die PowerShell verwenden) und wechseln Sie in das Verzeichnis, in dem Sie das Programm gespeichert haben. Dann können Sie es in jedem Fall mit:

python hello.py

starten.

Unter Windows verwenden Sie z. B. Notepad, fügen den Quelltext oben über die Zwischenablage ein und speichern ihn ab. .

So sieht das Ergebnis aus:

helloPython.jpg

Der gesamte Arbeitsbereich unterhalb der Titelleiste ist in der ursprünglichen Anzeige nach dem Start eine Schaltfläche, im folgenden Button genannt (so wird eine Schaltfläche im grafischen Toolkit "tkinter", das Python verwendet, genannt). Wenn Sie auf den Button klicken (oder auf den "X"-Button in der Titelleiste), wird die App(likation) (das Programm) beendet. Sie können das Fenster auch ganz normal durch "Ziehen" an den Rändern vergrößern oder es verschieben.

Wie Sie im Quelltext (Sourcecode) sehen, müssen Sie keine Variablen vorab definieren, sie müssen keine Klasse definieren. Es ist praktisch genau so einfach wie BASIC. Selbstverständlich unterstützt Python objektorientierte Programmierung, sogar mit echter Mehrfachvererbung, aber man muss zunächst nicht objektorientiert programmieren (was man als Fortgeschrittener aber tunlichst tun sollte).

Falls jetzt Ihr Interesse geweckt ist, das mal selbst zu probieren, steht Ihnen eine der schwierigeren Aufgaben leider noch bevor: Die Installation von Python und die ersten Schritte. Allerdings ist diese Installation deutlich einfacher als z. B. die Installation von Java plus einer Entwicklungsumgebung wie Eclipse oder IntelliJ IDEA.




Python herunterladen und installieren

Gehen Sie auf die Python-Startseite

http://www.python.org

bewegen Sie den Mauszeiger auf den Menüpunkt Downloads oben in der Menüleiste. Wählen Sie dann Ihr Betriebssystem und die derzeit aktuellste Version (wird normalerweise vorgeschlagen). Zum Zeitpunkt (10.12.2016) der Erstellung dieses Dokuments war das für Windows die Version 3.5.2. Es gibt bereits "Release Candidates" mit Version 3.6, diese sollten Sie aber insbesondere als Anfängerin nicht herunterladen, da darin durchaus noch Fehler sein können. Sollte aber bereits die Release-Version 3.6.x verfügbar sein, laden Sie diese. Sie hat eine recht nützliche Erweiterung bei der Angabe von Zahlenliteralen (ein Zahlenliteral ist eine Zahlenangabe wie 123): Man darf jetzt zwischen die Ziffern Underscores (_) einfügen, wodurch vor allem große Zahlen viel leichter lesbar sind, z. B. 703_568_234 statt (703568234).

Die Version (zumindest für Windows) scheint sowohl die 32-Bit als auch die 64-Bit- Version zu enthalten (im Gegensatz zu den Release Candidates wird nicht zwischen 32 Bit und 64 Bit unterschieden). Nach der Installation sehen Sie im Startmenü von Windows, wenn sie die Python-Gruppe aufklappen, ob Sie eine 64-Bit-Version haben.

Die heruntergeladene ausführbare (.exe) Datei sollten Sie dann mit einem aktuellen Virenprogramm zunächst prüfen dann ausführen. Folgen Sie danach den Hinweisen des Installationsprogramms.

Wichtiger Hinweis: Der Autor hat mittlerweile sein System auf die Python 3 Version 3.7.3 „upgedatet”(!). Ich habe alle (fast alle?) Programme aus diesem Kurs getestet. Sie scheinen noch alle zu funktionieren, garantieren kann ich das nicht. Außerdem muss man jetzt anscheinend wieder aufpassen, ob man die 32-Bit oder die 64-Bit Version herunterladen (und installieren) will. Wenn Sie ein 64-Bit-System haben, empfehle ich Ihnen die 64-Bit-Version – der Autor nutzt die 64-Bit-Version.

Zum Update habe ich zunächst die alte Version deinstalliert (über die Einstellungen in Windows 10 - bitte lesen Sie selbst nach, wie Sie Programme in Windows deinstallieren), und dann Python 3 Version 3.7.3 neu installiert (bzw. auf meinem „neuen” Notebook wurde es mit der vollständigen Installation von Microsoft Visual Studio 2019 [Commmunity Edition ist kostenlos!] mitinstalliert). Danach auch wieder den "PATH" angepasst (damit die Python-Einträge ganz am Schluss kommen, und nicht evtl. wichtige Windows-Verzeichnisse überdecken).

Tipp Hinweis zu Python mit Microsoft Visual Studio 2019: Visual Studio funktioniert seit Version 2019 ausgezeichnet mit Python, insbesondere kann man den hervorragenden Debugger von Visual Studio uneingeschränkt mit Python benutzen :-) Im Gegensatz zu dem einfachen Debugger, der bei Idle dabei ist, kann man mit dem von VS2019 auch die Teile von Programmen debuggen, die Tkinter (Standard grafische Oberfläche von Python) verwenden :-))) Trotzdem, wenn Sie VisualStudio nicht kennen, empfehle ich Ihnen zunächst Idle zu nutzen. Wie auch bei PyCharm wird Sie die Funktionsvielfalt von Visual Studio als Anfängerin „erschlagen”. Falls Sie Python zusammen mit Visual Studio 2019 installieren, liegt es (python.exe/pythonw.exe) im Installationsverzeichnis von Visual Studio im (Unter-)Verzeichnis Common7\IDE\Extensions\Microsoft\Python\Miniconda\Miniconda3-x64. Sorry, das war falsch (bis 21.04.2021), da liegt zwar eine Python Version, aber das ist Teil einer Installation mit Virtual Environment mit Anaconda. Was eine virtuelle Umgebung und insbesondere Anaconda (eine von vielen verfügbaren virtuellen Umgebungen für Python) ist, müssen Sie leider selbst googlen. Vielleicht erweitere ich diesen Kurs mal, in Kürze: Wenn Sie für ein Programm Python-Erweiterungen benötigen, dann sollten Sie ein Virtual Environment für dieses Programm anlegen. Das richtige Verzeichnis, für die Python Installation zusammen mit Visual Studio (zumindest 2019) ist (egal in welches Verzeichnis Sie Visual Studio installiert haben) „C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64”. Sie sollten dieses Verzeichnis zur Umgebungsvariable PATH hinzufügen (wie das geht, „googlen” Sie bitte selbst). Wie sie Visual Studio installieren (Community Version ist auch umsonst) googlen Sie bitte ebenfalls selbst.

Hinweise zur Installation unter Windows:

Ich empfehle Ihnen eine benutzerdefinierte Installation und Python nicht in das vorgeschlagene Verzeichnis zu installieren. Dieses heißt intern nämlich "...Program Files...", enthält also ein Leerzeichen. Es gibt leider immer noch viele Programme, die mit Leerzeichen in Pfadnamen nicht korrekt arbeiten. Und da Python ursprünglich nicht unter Windows entwickelt wurde, geht der Autor hier lieber "auf Nummer sicher".

Sie sollten bei der Installation auch die PATH-Umgebungsvariable setzen lassen. Nachträglich sollten Sie aber die Systemumgebungsvariablen bearbeiten und die beiden Python-Einträge vom Anfang an das Ende verschieben (falls mal ein Windows- Dateiname gleich ist, wie einer von der Python-Installation, könnte es sonst in Windows zu Fehlfunktionen kommen). Alt: Bei mir geht das am schnellsten, wenn ich auf "Start" klicke und (ohne die Anführungszeichen) „envir” (oder nur „envi”, „env”, ...) tippe, dann kommt ganz oben unter anderem "Systemumgebungsvariablen bearbeiten" . NEU: Folgendes scheint unabhängig von der Windows-Version zu funktionieren: Drücken Sie die Windows-Taste und gleichzeitig die Taste R. Es erscheint unten links der „Ausführen” Dialog. Dort geben Sie ein:

sysdm.cpl Sorry, das war bis 04.05.2020 falsch (syscdm.cpl).

Dann drücken Sie die Eingabetaste. Danach sollte der „Systemeigenschaften” Dialog erscheinen. Wählen Sie dort die Registerkarte „Erweitert” und dort unten „Umgebungsvariablen”.

In dem dann erscheinenden Dialog müssen Sie in der unteren Listbox (Systemvariablen) den Eintrag PATH suchen und diesen bearbeiten. Dann die beiden Einträge, die Python erstellt hat (Sie werden es vermutlich in ein anderes Verzeichnis als "C:\progs" wie ich installiert haben) nach unten verschieben. Im Bild unten sehen Sie, wie es aussehen sollte.




Mit Python 3 arbeiten

Tipp Eine verdammt gute Alternative zur unten angegebenen Entwicklungsumgebung IDLE ist PyCharm. Das verwende ich beruflich in meiner Firma. Es hat einen genialen "Debugger", der wesentlich besser ist, als der in IDLE enthaltene einfache Debugger. Zumindest die Basis-Version von PyCharm ist kostenlos (die kenne nicht, in der Firma habe ich die Professional Version). Trotzdem: Für die ersten Versuche empfehle ich Ihnen IDLE, die Vorteile von PyCharm benötigen sie erst, wenn Sie größere Programme erstellen, und die Funktionsvielfalt von PyCharm wird Sie als Anfänger „erschlagen”.

Klappen Sie im Startmenu (Windows 7 oder 10, bei 8 müssen Sie selbst suchen, hat der Autor nicht installiert) den Python-Eintrag auf und klicken Sie zunächst auf den Eintrag der mit

IDLE

beginnt (finden Sie normalerweise, wenn Sie den Eintrag Python aufklappen). IDLE (Integrated DeveLopment Environment) ist die Entwicklungsumgebung für Python. Sie können Python 3 Programme aber auch mit jedem beliebigen Editor, der UTF-8 unterstützt (z. B. den Windows Editor [Notepad]), erstellen. Aber IDLE bietet deutliche Vorteile, z. B. Syntax-Hilighting (automatische farbliche Hervorhebungen), siehe Bild unten. Sie sind dann in einer grafischen Python-Shell und können nach dem Eingabe-Prompt>>> ” direkt Befehle eingeben (ohne erst ein Programm erstellen zu müssen). Wollen Sie z. B. feststellen, ob Sie unter einer 32- oder 64-Bit-Version arbeiten, können Sie das mit:

>>> import struct;print(struct.calcsize("P") * 8)

feststellen. Es wird 32 oder 64 ausgegeben. Wichtig sind die Klammern um den gesamten(!) auszugebenden Ausdruck. „print” ist in Python 3 eine Funktion, in Python 2 war es noch ein Schlüsselwort (eingebauter Befehl), bei dem man um den auszugebenden Ausdruck keine Klammern setzen musste.

Oder geben Sie print(3*4) - und ja, das können Sie natürlich im Kopf rechnen. Wobei 3*4 auch funktioniert.

Um jetzt ein Programm einzugeben, klicken Sie im Menü auf „File” und wählen „New File”. Dann können Sie das „Hello, world!” von oben in die Zwischenablage kopieren (beim Markieren bitte aufpassen, dass Sie die Zeilennummern nicht mit kopieren) und im Editorfenster einfügen.

pythonIdle.jpg

Bevor Sie das Programm starten können, müssen Sie es erst speichern, z. B. unter dem Namen „hello.py” bzw. unter Windows mit dem Namen „hello.pyw”. Jetzt können Sie es im Run-Menü mit „Run Module” starten. Wenn Sie es aus Idle heraus starten, können Sie das Programm leider nicht mit dem Button beenden, Sie müssen den „X”-Button in der Titelleiste benutzen. Wenn Sie die Datei aber im Windows-Explorer mittels Doppelklick starten, funktioniert alles (dazu sollten die Programme [nur?] unter Windows unbedingt mit der Endung .pyw gesichert werden, sonst erscheint immer noch zusätzlich eine hässliche Windows-Eingabeaufforderung!).

Sie merken schon, das ist alles etwas Windows-lastig :-) Ich war und bin nicht der große Fan von Windows oder irgend einem anderem Betriebssystem. Aber ich muss leider zugeben, dass unter Windows alles irgendwie einfacher ist.

U N D  Windows ist mittlerweile von der Betriebssystem-Basis her ähnlich gut wie ein UNIX, QDOS, Amiga-OS, TOS, ...

Aber vor allem: Windows haben über 90% meiner Freunde zumindest als Zweitbetriebssystem installiert.

Ich habe leider nicht die Zeit, die fehlenden 10% so zu unterstützen wie die große Masse der Anwender.


Falls Sie bis jetzt durchgehalten haben, dann haben Sie es schon fast geschafft. Im nächsten Kapitel werden wir das „Hello, world!” Programm von oben „aufschlüsseln” und geringfügig erweitern.

Aufschlüsseln heißt in diesem Fall, dass dieses „Hello, world!” mit Kommentaren im Quelltext kommt.

In Python ist alles was nach einem Hash-Zeichen (#) kommt Kommentar.

Letzter Hinweis: Wenn sie das alles mit einer Python-Version vor 3.0 versuchen, wird nichts funktionieren! Dies ist eine Python 3 Einführung. Der Autor hat bislang selbst auch nur mit Python 2.x gearbeitet. Insofern können in dieser Einführung jede Menge Fehler "stecken".

Im nächsten Kapitel „legen wir dann los”