Python Grundlagen

Julian Huber & Matthias Panny

Theorie & Funktionsweise Python

🎯 Lernziele

  • Studierenden können Python Code in der Kommandozeile ausführen
  • Studierende können Python Skripte in der Kommandozeile ausführen
  • Studierende können Python Code mittels VS Code editieren

Was ist Python?

Was ist Python?

Python is a programming language that lets you work more quickly and integrate your systems more effectively.

The Python Software Foundation

Universelle Programmiersprache

Python findet Anwendung in sehr vielen Bereichen: Scientific Computing, Numerik, Webentwicklung, Softwareautomatisierung, Machine Learning, etc.

Interpretiert

Python wird, im Vergleich zu C/C++, für gewöhnlich nicht kompiliert, sondern Zeile für Zeile interpretiert

Dynamisch, implizit & stark typisiert → "Duck typing"

Datentypen müssen nicht explizit angegeben werden.
Das Vorhandensein von Methoden & Attributen definiert Objekte.

Bild: https://xkcd.com/353/

🤓 import this - Programierstil für Python

# Zen of Python
import this
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

Geschichte von Python

  • Anfang der 1990er Jahr von Guido van Rossum entwickelt
  • Python 3.0 wurde 2008 veröffentlicht und stellt den aktuellen Stand der Sprache dar
  • Wird von der Python Software Foundation (PSF) als Open-Soucre-Projekt verwaltet
  • Referenzimplementierung CPython - entwickelt in C & Python - stellt die häufigste Implementierung von Python dar


Guido van Rossum. "Erfinder" von Python.

Warum Python?

  • Einfach zu erlernende Programmiersprache
  • Schnelle Entwicklungszyklen
  • Hohe Popularität
  • Themen wie Algorithmen, Datenstrukturen & modernes Softwareengineering anwenderfreundlich möglich
  • umfangreiches Ökosystem an Paketen


Normierte Popularität mehrerer gängigen Programmiersprachen.

Installation & IDE

Installation von Python

  • Installieren Sie die aktuellste Python-Version (Python 3.12+) von https://www.python.org/downloads/ oder über den Windows Store
  • Überprüfen Sie ob Python ordentlich installiert wurde
    C:\> python --version
    Python 3.12.4
    
    • Wenn Sie als Ergebnis Python 3.12.x erhalten war die Installation erfolgreich
    • das bedeutet, dass im Betriebssystem eine Variable python angelegt wurde, die auf den nun installierten Interpreter verweist
  • Python selbst stellt nur eine Programmiersprache da, es kann prinzipiell mit jeder Entwicklungsumgebung gearbeitet werden

Installation von Python

Bild: Jakob Klotz

Troubleshooting

Problem Lösung
python not recognized ... Pfad richtig setzen
... ...

🤓 Troubleshooting - Pfad finden

Bild: Jakob Klotz

🤓 Troubleshooting - Pfad setzen

Bild: Jakob Klotz

Entwicklungsumgebung

Visual Studio Code → Empfohlen

PyCharm

VS Code

Öffnen eines Ordners

  • i.d.R. wird ein Ordner und damit ein Softwareprojekt geöffnet (nicht einzelne Dateien)
  • Links können Sie zwischen verschiedenen Menüs wechseln
    (z.B. Dateiverzeichnis, Erweiterungen)
  • In der Mitte werden Ihre geöffneten Dateien angezeigt

Terminal

  • In der Menüleiste oben, kann ein Terminal (Eingabeaufforderung geöffnet werden)
  • In der Regel öffnen wir hier eine PowerShell mit der wir Code ausführend und Ausgaben anzeigen können
  • Genaueres hierzu in späteren Vorlesungen

VS Code

Hello, World!

Möglichkeiten Python Code auszuführen

print("Hello, World!")

Python Interpreter in der Kommandozeile

  • "python" z.B. in der PowerShell öffnet Python-Interpreter → erkennbar an >>>
  • REPL: Read Evaluate Print Loop → Code kann zeilenweise ausgeführt werden (Enter-Taste)

Python Skript über die Kommandozeile

  • Textdatei hello.py mit Inhalt print("Hello, World!")
  • python hello.py interpretiert den gesamten Skript-Inhalt

In der Entwicklungsumgebung z.B. VS Code

  • hier gibt es meist einen Shortcut, der die aktuell geöffnete Datei ausführt
  • ⚠️: es können mehrere Interpreter auf einem PC installiert sein

✍ Aufgabe

  • Informieren Sie sich über Google, wie sie die Python-Version innerhalb eines Skriptes abfragen und mittels print()-Befehl ausgeben können
  • Verfassen Sie mittels VS Code eine Skript (version.py) und führen Sie es auf alles drei möglichen Arten aus.
  • legen Sie eine Datei notebook.ipynb an und öffnen Sie auch diese in VS Code. Nun sollte Ihnen VS Code evtl. vorschlagen Erweiterungen zu installieren. Installieren Sie die betreffenden Erweiterungen und versuchen Sie auch hier den Befehl auszuführen.

Musterlösung