Python lernen

Python lernen

Python ist eine der beliebtesten Programmiersprachen der Welt und eignet sich sowohl für Anfänger als auch für erfahrene Entwickler. Sie wurde von Guido van Rossum entwickelt und erstmals 1991 veröffentlicht. Die Sprache ist bekannt für ihre einfache und klare Syntax, die es Programmierern ermöglicht, sich auf die Lösung von Problemen zu konzentrieren, anstatt sich mit komplizierten Sprachregeln auseinanderzusetzen. Genau das richtig zum Einstieg und wir geben einen kurzen Einstieg hier im Artikel „Python lernen“.

Was Python besonders auszeichnet, ist seine Vielseitigkeit. Es wird in vielen Bereichen eingesetzt, wie:

  • Webentwicklung (z. B. mit Django oder Flask)
  • Datenanalyse und Wissenschaftliches Rechnen (z. B. mit Pandas, NumPy, Matplotlib)
  • Künstliche Intelligenz und Machine Learning (z. B. mit TensorFlow, scikit-learn)
  • Automatisierung und Skripting (z. B. für Aufgaben wie Datenverarbeitung oder Serveradministration)
  • Softwareentwicklung und Spieleprogrammierung

Dank seiner umfassenden Bibliotheken und seiner klaren Struktur eignet sich Python hervorragend für Anfänger. Der Einstieg ist leicht, aber die Sprache bietet auch viele fortgeschrittene Konzepte, die dir helfen, komplexe Projekte zu entwickeln.

In dieser Einführung werden wir uns mit den grundlegenden Konzepten der Sprache vertraut machen, um dir eine solide Grundlage zu bieten. Du wirst lernen, wie du Variablen verwendest, mit Daten arbeitest, Bedingungen und Schleifen anwendest und einfache Programme schreibst.


1. Variablen und Datentypen

In Python müssen Variablen nicht explizit deklariert werden, bevor man sie verwendet. Sie nehmen automatisch den Datentyp an, den du ihnen zuweist.

Datentypen in Python:

  • Integer (int): Ganze Zahlen
  • Float (float): Dezimalzahlen
  • String (str): Text
  • Boolean (bool): Wahrheitswerte (True oder False)
  • Liste (list): Eine geordnete Sammlung von Elementen, die verändert werden können
  • Tuple (tuple): Eine geordnete Sammlung von Elementen, die nicht verändert werden können
  • Set (set): Eine ungeordnete Sammlung von einzigartigen Elementen
  • Dictionary (dict): Eine Sammlung von Schlüssel-Wert-Paaren

Beispiele:

x = 10           # Integer
y = 3.14         # Float
name = "Max"     # String
is_active = True # Boolean

Python unterstützt auch die Konvertierung von Datentypen:

x = 5
y = "10"
print(x + int(y))  # Konvertiert y zu int und addiert es zu x -> 15

2. Operatoren

Arithmetische Operatoren:

a = 10
b = 3
print(a + b)  # Addition -> 13
print(a - b)  # Subtraktion -> 7
print(a * b)  # Multiplikation -> 30
print(a / b)  # Division -> 3.3333...
print(a // b) # Ganzzahl Division -> 3
print(a % b)  # Modulo (Rest der Division) -> 1
print(a ** b) # Potenzierung -> 1000

Vergleichsoperatoren:

a = 5
b = 3
print(a == b)  # Gleich -> False
print(a != b)  # Ungleich -> True
print(a > b)   # Größer -> True
print(a < b)   # Kleiner -> False
print(a >= b)  # Größer oder gleich -> True
print(a <= b)  # Kleiner oder gleich -> False

Logische Operatoren:

x = True
y = False
print(x and y)  # Und -> False
print(x or y)   # Oder -> True
print(not x)    # Nicht -> False

3. Listen (Lists)

Listen sind eine der mächtigsten Datentypen in Python. Sie sind geordnete Sammlungen und können Elemente verschiedenen Datentyps enthalten.

fruits = ["Apfel", "Banane", "Kirsche"]
print(fruits[0])   # Zugriff auf das erste Element -> "Apfel"
print(fruits[-1])  # Zugriff auf das letzte Element -> "Kirsche"

# Liste ändern
fruits.append("Orange")    # Hinzufügen eines Elements
fruits.remove("Banane")    # Entfernen eines Elements
print(fruits)

# Durch die Liste iterieren
for fruit in fruits:
    print(fruit)

4. Bedingungen (if, elif, else)

Bedingungen ermöglichen es, verschiedene Codeabschnitte basierend auf bestimmten Kriterien auszuführen.

x = 10
if x > 5:
    print("x ist größer als 5")
elif x == 5:
    print("x ist gleich 5")
else:
    print("x ist kleiner als 5")

Verschachtelte Bedingungen:

x = 10
y = 5
if x > 5:
    if y < 10:
        print("x ist größer als 5 und y ist kleiner als 10")

5. Schleifen (Loops)

Mit Schleifen kannst du wiederholende Aufgaben effizient durchführen.

For-Schleifen:

# Iterieren durch eine Liste
fruits = ["Apfel", "Banane", "Kirsche"]
for fruit in fruits:
    print(fruit)

# Range für wiederholte Iterationen
for i in range(5):  # 0 bis 4
    print(i)

While-Schleifen:

count = 0
while count < 5:
    print(count)
    count += 1  # Zähler erhöhen

Break und Continue:

for i in range(10):
    if i == 5:
        break  # Schleife wird bei i == 5 beendet
    if i == 3:
        continue  # Überspringt i == 3
    print(i)

6. Funktionen

Funktionen ermöglichen es, Code zu strukturieren und wiederzuverwenden.

# Definition einer Funktion
def greet(name):
    print(f"Hallo, {name}!")

# Aufruf der Funktion
greet("Anna")

Funktionen mit Rückgabewert:

def add(a, b):
    return a + b

result = add(3, 4)
print(result)  # Ausgabe: 7

Standardwerte für Funktionsparameter:

def greet(name="Welt"):
    print(f"Hallo, {name}!")

greet()           # Ausgabe: "Hallo, Welt!"
greet("Max")      # Ausgabe: "Hallo, Max!"

7. Fehlerbehandlung (Exceptions)

Mit try-except kannst du Fehler abfangen und kontrollieren, was bei einem Fehler passiert.

try:
    x = 10 / 0  # Fehler: Division durch Null
except ZeroDivisionError:
    print("Fehler: Du kannst nicht durch null teilen!")

8. Module und Bibliotheken

Python hat eine riesige Sammlung von Modulen, die dir helfen, Aufgaben zu automatisieren, wie z.B. mathematische Berechnungen, Dateiverwaltung oder sogar das Erstellen von Webanwendungen.

Ein Modul importieren:

import math
print(math.sqrt(16))  # Ausgabe: 4.0

9. Dictionaries (Wörterbücher)

Dictionaries speichern Daten in Form von Schlüssel-Wert-Paaren.

person = {
    "name": "Max",
    "age": 25,
    "city": "Berlin"
}

# Zugriff auf einen Wert
print(person["name"])  # Ausgabe: "Max"

# Hinzufügen eines neuen Schlüssel-Wert-Paares
person["job"] = "Entwickler"

10. List Comprehensions

List Comprehensions ermöglichen es dir, Listen in einer kompakten und lesbaren Weise zu erstellen.

# Erstellen einer Liste der Quadratzahlen von 0 bis 4
squares = [x ** 2 for x in range(5)]
print(squares)  # Ausgabe: [0, 1, 4, 9, 16]

11. Oft genutzte Bibliotheken

In Python gibt es eine Vielzahl an Bibliotheken, die je nach Bedarf für verschiedene Anwendungsbereiche genutzt werden. Hier sind einige der am häufigsten verwendeten Bibliotheken:

1. Datenanalyse und -manipulation

  • NumPy: Die Grundlage für wissenschaftliche Berechnungen in Python. Es bietet Unterstützung für Arrays, Matrizen und eine Vielzahl von mathematischen Funktionen.
  • Pandas: Bietet Datenstrukturen (wie DataFrames) und Funktionen für die Manipulation und Analyse von strukturierten Daten (z.B. CSV, Excel, SQL-Datenbanken).
  • Dask: Eine Erweiterung von Pandas für die Arbeit mit sehr großen Datensätzen, die nicht in den Arbeitsspeicher passen. Es ermöglicht parallele Berechnungen.
  • Vaex: Eine Bibliothek, die ähnliche Funktionen wie Pandas bietet, aber für die Arbeit mit sehr großen, speichereffizienten Datensätzen optimiert ist.

2. Datenvisualisierung

  • Matplotlib: Die am weitesten verbreitete Bibliothek für das Erstellen von statischen, interaktiven und animierten Visualisierungen.
  • Seaborn: Eine auf Matplotlib basierende Bibliothek, die statistische Visualisierungen und stilvolle Grafiken vereinfacht.
  • Plotly: Eine Bibliothek, die interaktive Graphen, Dashboards und 3D-Datenvisualisierungen ermöglicht. Es wird oft in Web-Anwendungen integriert.
  • Bokeh: Eine interaktive Visualisierungsbibliothek, die in der Lage ist, schöne, interaktive Plots für das Web zu erstellen.
  • Altair: Eine deklarative Visualisierungsbibliothek, die es einfach macht, interaktive Visualisierungen mit wenig Code zu erstellen.

3. Maschinelles Lernen und Data Science

  • Scikit-learn: Die Standardbibliothek für klassische maschinelle Lernmethoden, wie z.B. Klassifikation, Regression, Clustering und Dimensionalitätsreduktion.
  • TensorFlow: Eine Open-Source-Plattform für maschinelles Lernen und Deep Learning. Sie unterstützt sowohl die Entwicklung von Modellen als auch deren Bereitstellung.
  • Keras: Eine High-Level-API für neuronale Netzwerke, die ursprünglich für TensorFlow entwickelt wurde, aber auch mit anderen Frameworks funktioniert.
  • PyTorch: Ein Deep-Learning-Framework, das sich durch seine Flexibilität und benutzerfreundliche API auszeichnet. Besonders beliebt in der Forschung.
  • XGBoost: Eine leistungsstarke Implementierung von Gradient Boosting, die in vielen maschinellen Lern-Wettbewerben dominierend war.
  • LightGBM: Eine effiziente Implementierung von Gradient Boosting, die für große Datenmengen optimiert ist.
  • CatBoost: Ein weiteres Gradient-Boosting-Framework, das besonders für kategorische Daten gut geeignet ist.
  • FastAI: Eine Deep-Learning-Bibliothek, die auf PyTorch aufbaut und einen einfacheren Zugang zu modernen Deep-Learning-Techniken bietet.

4. Statistik und Wahrscheinlichkeitsrechnung

  • SciPy: Eine Bibliothek, die auf NumPy aufbaut und Funktionen für wissenschaftliche Berechnungen wie Optimierung, Integration, Interpolation und Statistik bietet.
  • Statsmodels: Eine Bibliothek für statistische Modellierung und Tests. Sie bietet viele Werkzeuge für die Durchführung von Regressionsanalysen und Zeitreihenanalysen.
  • SymPy: Eine Bibliothek für symbolische Mathematik. Sie kann algebraische Ausdrücke vereinfachen, integrale und Ableitungen berechnen und mehr.

5. Webentwicklung

  • Flask: Ein leichtgewichtiges Web-Framework, das sich hervorragend für kleine bis mittelgroße Web-Anwendungen eignet. Es ist einfach zu lernen und zu verwenden.
  • Django: Ein Full-Stack-Web-Framework, das alles bietet, was man für die Entwicklung von Web-Anwendungen braucht (Routing, Templates, Datenbank-ORM, etc.).
  • FastAPI: Ein modernes Web-Framework, das für die Erstellung von APIs optimiert ist. Es ist schnell und unterstützt asynchrone Programmierung.
  • Bottle: Ein minimalistischeres Web-Framework, das für kleine Anwendungen geeignet ist, die nur wenige Komponenten benötigen.

6. Datenbank-Interaktion

  • SQLAlchemy: Ein mächtiges ORM (Object-Relational Mapper) für die Interaktion mit SQL-Datenbanken. Es bietet eine High-Level-Schnittstelle zum Abfragen von Datenbanken.
  • Peewee: Ein einfaches ORM für kleinere Projekte oder wenn du eine leichtgewichtige Datenbankinteraktion benötigst.
  • PyMongo: Eine Python-Bibliothek für die Interaktion mit MongoDB (NoSQL).
  • Redis-py: Eine Python-Bibliothek für die Kommunikation mit Redis, einem speicherbasierten Key-Value-Store.

7. Web Scraping und API-Interaktion

  • BeautifulSoup: Eine der populärsten Bibliotheken für das Parsen und Extrahieren von Daten aus HTML und XML.
  • Scrapy: Ein Framework für Web-Scraping, das das Extrahieren von Daten von Webseiten und das Crawlen des Internets erleichtert.
  • Requests: Eine einfach zu verwendende Bibliothek für HTTP-Anfragen, um Daten von APIs oder Webseiten zu erhalten.
  • Selenium: Wird hauptsächlich für automatisiertes Testen von Webanwendungen verwendet, kann aber auch zum Scraping dynamischer Webseiten eingesetzt werden.

8. Automatisierung und Systemaufgaben

  • Celery: Eine asynchrone Aufgaben-Queue, die verwendet wird, um langwierige Aufgaben im Hintergrund auszuführen (z.B. E-Mail-Versand, Verarbeitung von Datensätzen).
  • Paramiko: Eine Bibliothek für SSH-Verbindungen, mit der du über Python mit entfernten Servern kommunizieren kannst.
  • Fabric: Eine Bibliothek zur Automatisierung von Server- und Systemverwaltungsaufgaben, wie das Bereitstellen von Anwendungen und das Verwalten von Servern.
  • Watchdog: Ein Tool zum Überwachen von Dateiänderungen im Dateisystem und zum Ausführen von Aktionen bei bestimmten Ereignissen.

9. Testing

  • Pytest: Eine der beliebtesten Bibliotheken für das Testen von Python-Code. Sie ist sehr flexibel und einfach zu verwenden.
  • unittest: Eine in Python integrierte Bibliothek zum Erstellen von Tests.
  • nose2: Eine weitere Testbibliothek, die als Nachfolger von Nose gilt und zusätzliche Features bietet.

10. Graphen und Netzwerke

  • NetworkX: Eine Bibliothek zur Analyse von Netzwerken und Graphen. Sie unterstützt viele Algorithmen für Graphentheorie und Netzwerkanalyse.
  • Graph-tool: Eine effiziente Python-Bibliothek für die Manipulation und Analyse von Graphen und Netzwerken.

11. Bildverarbeitung und Computer Vision

  • OpenCV: Eine sehr populäre Bibliothek für die Verarbeitung von Bildern und Videos sowie für Computer Vision-Anwendungen.
  • Pillow: Eine Bibliothek zur Bildbearbeitung, die als einfachere Schnittstelle für die Manipulation von Bildern dient.
  • scikit-image: Eine Sammlung von Algorithmen zur Bildverarbeitung, die auf SciPy aufbauen.
  • Tesseract (via pytesseract): Eine OCR-Bibliothek zur Texterkennung in Bildern.

12. Künstliche Intelligenz und Natural Language Processing (NLP)

  • NLTK: Ein umfassendes Toolkit für die Arbeit mit natürlicher Sprache, das viele Funktionen für Tokenisierung, Parsing und Textanalyse bietet.
  • spaCy: Eine moderne und leistungsstarke NLP-Bibliothek, die für industrielle Anwendungen entwickelt wurde.
  • transformers (Hugging Face): Bietet Zugriff auf vortrainierte Transformer-Modelle (wie BERT, GPT) für Aufgaben im Bereich NLP.

13. Sonstiges

  • PyGame: Eine Bibliothek für die Entwicklung von 2D-Spielen.
  • tkinter: Die Standardbibliothek zur Erstellung von Desktop-GUIs in Python.
  • click: Eine Bibliothek zum Erstellen von Kommandozeilen-Tools und Interfaces.
  • PyQt: Eine weitere Bibliothek für die Erstellung von Desktop-GUIs, die auf Qt basiert.
  • pytest: Eine umfangreiche Testbibliothek für Unit-Tests, die es einfach macht, Testfunktionen zu schreiben und zu organisieren.

Es gibt natürlich noch viele andere Bibliotheken, aber dies sind einige der wichtigsten und am häufigsten genutzten.


Python ist eine einfach zu erlernende, vielseitige Programmiersprache, die sich sowohl für Anfänger als auch für erfahrene Entwickler eignet. Sie ist aufgrund ihrer klaren Syntax und umfangreichen Bibliotheken besonders beliebt. Python wird in vielen Bereichen eingesetzt, wie Webentwicklung, Datenanalyse, künstliche Intelligenz und Automatisierung.

Die Sprache ermöglicht es, schnell funktionale Programme zu schreiben und ist aufgrund ihrer breiten Anwendbarkeit eine ideale Wahl für verschiedene Projekte. In der Einführung haben wir grundlegende Konzepte wie Variablen, Operatoren, Schleifen, Bedingungen, Funktionen und Datenstrukturen behandelt, die dir eine solide Basis bieten, um mit Python zu programmieren.

Mit diesem Wissen kannst du beginnen, erste Programme zu schreiben und deine Fähigkeiten weiter auszubauen.

Weitere Themen: Python Programmierung lernen: Tipps für effektives Lernen und Python Programmiersprache

VG WORT Pixel

Newsletter Anmeldung

Bleiben Sie informiert! Wir informieren Sie über alle neuen Beiträge (max. 1 Mail pro Woche – versprochen)