Dieses Tutorial entstand während meiner eigenen Erfahrungen mit Python. Alles habe ich nach besten Wissen und Gewissen aufgeschrieben, aber es können natürlich immer noch Fehler enthalten sein.
Falls Dir etwas auffällt, dann einfach ein Kommentar auf dieser Seite hinterlassen.
Englische Begriffe: Ich mache hier keine Übersetzungen der englischen Begriffe. Meistens arbeitet man auch auf Deutsch mit den englischen Begriffen und eine Übersetzung ist hier mehr verwirrend als hilfreich. Alle speziellen Begriffe werden am Ende noch in einem Begriffsüberblick zusammengefasst und man kann bei Bedarf dort nachsehen.
Das gesamte Tutorial wird hauptsächlich auf einem Windows 10 PC durchgeführt, daher werde ich mich auch nicht auf Besonderheiten unter MacOS oder Linux konzentrieren.
Bevor wir mit Python loslegen können, sind noch ein paar Dinge zu installieren - z.B. Python selbst.
Ich werde hier die wichtigsten Schritte aufzeigen, allerdings nicht alles im Detail behandeln - dazu gibt es auf den genannten Seiten genug ausführliche Information.
2. 1. Python Installation
Bevor man irgendetwas mit Python machen kann, braucht man natürlich zuerst mal Python auf seinem Computer. Der schnellste Weg führt hier direkt über die Python Webseite:
Python Download Seite
Für dieses Tutorial wurde die Version 3.8.1 verwendet und für die Installation die Datei "Windows x86-64 web-based installer". Bevor man die Installation startet, noch die Option "Add Python 3.8 to PATH" angeben und bei Bedarf ein eigenes Installationsverzeichnis.
2. 2. Python Editor PyCharm
Damit man Python auch effizient editieren und testen kann, ist ein vernünftiger Editor notwendig. Sehr oft wird hier der Klassiker "PyCharm" verwendet. PyCharm findet man hier:
PyCharm Editor
Für unsere Zwecke reicht hier die kostenlose "Community Editor" vollkommen aus.
Nach der Installation starten wir PyCharm und klicken auf "New Project". Dort wählen wir eine "Location" für das Projekt aus und klicken auf "Existing Interpreter". Wir wollen also unsere installierte Python Version nutzen. Nachdem der Python 3.8 Interpreter noch nicht bekannt ist, klicken wir auf die "..." neben dem Interpreter Dropdown, wählen im nächsten Fenster den "System Interpreter" und unsere installierte Version.
Damit ist die Installation von PyCharm abgeschlossen.
Wir erstellen eine neue Datei "hello.py" und schreiben einfach die folgende Zeile, um zu überprüfen ob Python im VS Code sauber läuft:
print("Hello Python")
Rechts oben findet man ein "Start" Symbol () in grün. Drücken und schon wird der Code im Terminal ausgeführt.
2. 3. Python Editor - Visual Studio Code
Ein anderer Editor ist Visual Studio Code von Microsoft. Da ich diesen Editor für andere Projekte auch verwendet, werde ich auch hier auf die Installation kurz eingehen.
Die Software selbst findet man hier:
Visual Studio Code
Nachdem Visual Studio Code installiert ist, sollte man sich noch die Python Extension von Microsoft installieren. Dazu geht man ganz links auf das Extension Symbol und sucht Python. Die Extension auswählen, auf "Install" geklickt und schon ist alles bereit.
Die richtige Version des Python Interpreters sollte VS Code eigentlich automatisch finden und ganz links unten anzeigen, falls nicht kann man links unten auf den Interpreter klicken.
Eventuell kommt ein Hinweise "Linter pylint is not installed". Da dies ein ganz hilfreiches Tool ist, sollte man den auch gleich installieren.
Wir erstellen eine neue Datei "hello.py" und schreiben einfach die folgende Zeile, um zu überprüfen ob Python im VS Code sauber läuft:
print("Hello Python")
Rechts oben findet man ein "Start" Symbol () in grün. Drücken und schon wird der Code im Terminal ausgeführt.
Die Files, also Dateien, eines Python Programms sind einfache Textfiles.
Üblicherweise verwenden Python Files eine Ende .py und damit wir klar gemacht, dass es sich bei diesem File um ein Pythonfile handelt.
Python selbst führt die Befehle von der ersten Zeile bis zur letzten Zeile in aufsteigender Reihenfolge aus.
Python Kommentare starten mit ein Hash-Tag (#) und haben keine Funktion für Python selbst. Das sind ausschließlich Kommentare für den Programmierer. Das Kommentar geht immer bis zum Ende der Zeile.
Vorschläge wie man Python programmiert findet man in einem sogenannten PEP Standard. Der folgende Standard gibt einige generelle Hinweise:
PEP 8 - Style Guide for Python Code
Diese Richtlinien sind keine Pflicht, allerdings ist es eine gute Idee um Code zu schreiben der auch für andere möglichst einfach zu lesen ist.
Das Einrücken von Python Code ist nicht nur eine optische Unterteilung von Code, sondern gibt bei Python an zu welchem Block die Kommandos gehören.
Das Einrücken sollte mit Spaces, also Leerzeichen, erfolgen und pro Level sollten 4 Leerzeichen verwendet werden. Tabs sollten nicht verwendet werden und bei Python 3 ist eine Mischung aus Leerzeichen und Tabulatoren nicht erlaubt.
Docstrings sind ausschließlich zur Dokumentation und geben zusätzliche Informationen über das Pythonfile. Wenn man Docstrings entsprechend formatiert kann eine Ausgabe mit anderen Programmen erfolgen, welche die Docstrings in einem schönen Format darstellen.
Variablen speichern Informationen und in Python werden Variablen mit einem Namen gekennzeichnet, welcher mit einem Buchstaben beginnt und danach Buchstaben, Zahlen und _ enthalten kann.
Im Gegensatz zu anderen Programmiersprachen ist eine Variable in Python einfach ein Zeiger, also eine Referenz, auf ein Objekt, welches die Informationen speichert.
Damit muss man auch keinen Typ für eine Variable angeben, sondern Python kümmert sich im Hintergrund um den entsprechenden Typ.
Bei längeren Variablen sollte man den _ (Underscore) als Trennung zwischen den Wörtern verwenden. Also zum Beispiel counter_for_duration.
Variablen in Python sind Case-sensitive, das heisst Variablen unterscheiden Groß- und Kleinschreibung. Die Variable counter ist also nicht gleich mit Counter!
Wenn Variablen nicht mehr benutzt werden, dann gibt Python den Speicher für das Objekt automatisch wieder frei. Diese Funktion findet man oft unter dem Begriff "Garbage Collector".
Speichernutzung von Python
Python verwendet Variablen nur als Zeiger auf Objekte, welche die Daten speichern. Bereits eine infache Integerzahl (Ganzzahl) benötigt auf einem 64bit System 28 Byte Speicher. Jedes Objekt hat einen Overhead, also zusätzlichen Speicher, von 16 Bytes.
Das ist eine Variable welche nur die Werte True oder False hat. Also wahr oder falsch.
Mit dem not Statement kann man eine Boolean Variable umdrehen.
Hier ist auf die Großschreibung von False und True zu achten.
Eine Integer-Variable ist eine Ganzzahl-Variable, also Werte wie 5, 789 oder 6151667.
Eine Float-Variable ist eine Kommazahl-Variable, also Werte wie 5.23, 789.19 oder 6151667.64.
Bei der Angabe von Float-Variablen kann auch eine Exponentialschreibweise verwendet werden. Dazu wird zuerst die Basis angegeben, dass "e" und danach der Exponent. Also "5e3" stellt den Wert 5000 dar.
Eine String-Variable ist eine Variable, welche einen Text beinhaltet.
String Variablen sind immutable, d.h. eine String Variable kann nicht mehr verändert werden. Aber es können natürlich jederzeit neue Strings erstellt werden.
Der Text selbst wird in einfachen oder doppelten Hochkommas eingeschlossen. Das ist hilfreich, wenn man ein Hochkomma innerhalb eines Strings darstellen möchte.
Das Zeichen \n wird für einen Zeilenumbruch innerhalb des Strings verwendet.
Einen mehrzeiligen String kann man in drei Hochkomma einschliessen.
Verlängern von Strings (Concatenation)
Mehrere Strings kann man aneinanderhänger doch ein + Symbol.
Auch das Multiplikationssymbol kann hier verwendet werden um einen String mehrfach aneinander zu hängen.
Setzt man vor dem Hochkomma ein "f", dann handelt es sich um einen formatierten String und man kann Variablen direkt im String angeben. Dazu wird die Variable in geschwungenen Klammern eingeschlossen.
Wenn man keinen Wert setzen möchte, so kann man eine Variable auf den Wert None (Großschreibung) setzen.
Konvertieren von Variablen
Wenn man einen Typ einer Variable in einen anderen Typ verwandeln möchte, so kann das mit den folgenden Kommandos ausgeführt werden:
float(), int(), bool(), str()
Die einfachsten Rechenoperationen sind + - / * und ** für die Potenzrechnung.
Möchte man eine Variable direkt beeinflussen, kann man auch die Kurzschreibweise des Operators und dem Gleichheitszeichen verwenden, also zum Beispiel += oder -=.