lago-programming-for-beginners/session-1/python.md

122 lines
5.4 KiB
Markdown

# Python 3
Python 3 ist eine interpretierte, höhere Programmiersprache, die für ihre Lesbarkeit und Vielseitigkeit bekannt ist.
Sie zeichnet sich durch eine klare Syntax und eine große Standardbibliothek aus, was die Entwicklung von Software in verschiedenen Bereichen erleichtert.
Python 3 ist die aktuelle Hauptversion der Python-Sprache und beinhaltet wichtige Änderungen gegenüber früheren Versionen.
Python ist objektorientiert, unterstützt aber auch andere Programmierparadigmen wie die imperative und funktionale Programmierung.
Die Sprache wird in der Regel dynamisch typisiert, was bedeutet, dass die Typen von Variablen zur Laufzeit überprüft werden.
## Hauptmerkmale:
- Interpretierte Sprache: Python-Code wird zur Laufzeit von einem Interpreter ausgeführt und muss nicht vorab kompiliert werden.
- Dynamische Typisierung: Der Datentyp einer Variablen wird während der Laufzeit des Programms bestimmt.
- Lesbare Syntax: Python verwendet eine übersichtliche und leicht verständliche Syntax, die das Schreiben und Lesen von Code vereinfacht.
- Große Standardbibliothek: Python bietet eine umfassende Sammlung von Modulen und Funktionen, die für viele Aufgaben verwendet werden können.
- Plattformunabhängigkeit: Python-Programme können auf verschiedenen Betriebssystemen ohne wesentliche Änderungen ausgeführt werden.
- Objektorientierte Programmierung: Python unterstützt die Erstellung von Klassen und Objekten, die für die Strukturierung von Programmen verwendet werden können.
## Anwendungsbereiche:
- Webentwicklung: Entwicklung von Webanwendungen und Webdiensten mit Frameworks wie Django und Flask.
- Datenanalyse und -visualisierung: Analyse und Verarbeitung von Daten mit Bibliotheken wie Pandas und Matplotlib.
- Künstliche Intelligenz und Machine Learning: Entwicklung von Modellen und Algorithmen mit Bibliotheken wie TensorFlow und Scikit-learn.
- Automatisierung: Erstellung von Skripten zur Automatisierung von Aufgaben und Prozessen.
- Wissenschaftliche Berechnungen: Ausführung komplexer mathematischer und wissenschaftlicher Berechnungen mit Bibliotheken wie NumPy.
## Grundlagen der Python-Syntax
Hier sind einige grundlegende Konzepte der Python-Syntax:
* **Variablen:** Variablen sind Namen, die verwendet werden, um Werte zu speichern. Zum Beispiel:
```python
name = "Max"
age = 30
```
* **Datentypen:** Python hat verschiedene Datentypen, wie z. B. Integer (ganze Zahlen), Float (Dezimalzahlen), String (Text) und Boolean (Wahrheitswerte).
```python
number = 10 # Integer
pi = 3.14 # Float
text = "Hello" # String
is_true = True # Boolean
```
* **Operatoren:** Operatoren werden verwendet, um Berechnungen durchzuführen oder Werte zu vergleichen.
```python
sum = 10 + 5
product = 3 * 7
is_equal = (5 == 5) # Boolean: True
```
* **Kommentare:** Kommentare werden verwendet, um den Code zu erklären. Sie werden vom Python-Interpreter ignoriert.
```python
# This is a comment
print("Hello") # Prints "Hello"
```
* **Kontrollstrukturen:** Kontrollstrukturen steuern den Ablauf des Programms. Die wichtigsten sind `if`-Bedingungen und Schleifen (`for` und `while`).
```python
# if condition
if age > 18:
print("You are an adult.")
else:
print("You are a minor.")
# for loop
for i in range(5): # Repeats 5 times (0 to 4)
print(i)
# while loop
counter = 0
while counter < 5:
print(counter)
counter = counter + 1
```
* **Funktionen:**
Funktionen sind wiederverwendbare Codeblöcke, die eine bestimmte Aufgabe ausführen. Sie helfen, den Code zu strukturieren und zu organisieren.
**Funktionsdefinition:** Eine Funktion wird mit dem Schlüsselwort `def` definiert, gefolgt vom Funktionsnamen, Klammern `()` und einem Doppelpunkt `:`. Der Code innerhalb der Funktion wird eingerückt.
```python
def greet(name):
"""Diese Funktion begrüßt die übergebene Person.""" # Docstring (Dokumentation der Funktion)
print("Hello, " + name + "!")
```
In diesem Beispiel ist `greet` der Name der Funktion. `name` ist ein Parameter, der an die Funktion übergeben wird. Die Funktion gibt "Hello, " gefolgt vom Namen und einem Ausrufezeichen aus.
**Funktionsaufruf:** Um eine Funktion auszuführen, musst du sie aufrufen. Das geschieht, indem du den Funktionsnamen gefolgt von Klammern `()` angibst. Wenn die Funktion Parameter erwartet, musst du diese beim Aufruf übergeben.
```python
greet("Alice") # Ruft die Funktion 'greet' mit dem Argument "Alice" auf
greet("Bob") # Ruft die Funktion 'greet' mit dem Argument "Bob" auf
```
Dieser Code ruft die Funktion `greet` zweimal auf, einmal mit dem Argument "Alice" und einmal mit dem Argument "Bob". Die Ausgabe wäre:
```
Hello, Alice!
Hello, Bob!
```
**Funktionen mit Rückgabewert:** Funktionen können auch Werte zurückgeben. Das geschieht mit dem Schlüsselwort `return`.
```python
def add(x, y):
"""Diese Funktion addiert zwei Zahlen und gibt das Ergebnis zurück."""
return x + y
result = add(5, 3) # Ruft die Funktion 'add' auf und speichert das Ergebnis in der Variable 'result'
print(result) # Gibt 8 aus
```
Die Funktion `add` nimmt zwei Parameter `x` und `y` entgegen, addiert sie und gibt das Ergebnis mit `return` zurück. Der Rückgabewert wird dann in der Variable `result` gespeichert.