Python-Spickzettel: Befehle und Beispiele

Python-Spickzettel mit Beispielen zum Kopieren: f-String, Listen und List Comprehension, Dictionaries, Schleifen, Funktionen, Dateien, JSON, Fehlerbehandlung, pip und venv.

72 Einträge

Strings

f"{name} ist {alter} Jahre alt"f-String: Werte direkt in Text einsetzen (ab Python 3.6)
f"{preis:.2f} €"Zahl mit zwei Nachkommastellen; f"{x:,}" mit Tausendertrennzeichen
f"{wert=}"Ausdruck und Wert für die Fehlersuche ausgeben, etwa wert=42 (ab 3.8)
s.strip()Leerraum am Anfang und Ende entfernen; lstrip(), rstrip() einseitig
s.split(",")Text an einem Trennzeichen in eine Liste teilen; ohne Argument an Leerraum
", ".join(liste)Liste von Strings mit Trennzeichen verbinden
s.replace("alt", "neu")Alle Vorkommen ersetzen
s.lower() / s.upper() / s.title()Klein, groß, Wortanfänge groß
s.startswith("http")Beginnt der Text damit? Gegenstück endswith()
"ab" in sEnthält der Text die Zeichenfolge?
s[::-1]Text umkehren (Slicing mit Schrittweite −1)
s[:10]Die ersten zehn Zeichen; s[-3:] die letzten drei
s.removeprefix("www.")Präfix entfernen, falls vorhanden (ab 3.9); removesuffix() am Ende

Listen

zahlen = [3, 1, 2]Liste anlegen
zahlen.append(4)Element hinten anhängen; extend([5, 6]) hängt mehrere an
zahlen.insert(0, 9)An Position 0 einfügen
zahlen.pop()Letztes Element entfernen und zurückgeben; pop(0) das erste
zahlen.remove(3)Erstes Vorkommen des Werts entfernen
sorted(zahlen)Sortierte Kopie; zahlen.sort() sortiert die Liste selbst
sorted(personen, key=lambda p: p["alter"], reverse=True)Nach einem Schlüssel absteigend sortieren
[x * 2 for x in zahlen if x > 1]List Comprehension: neue Liste aus einer bestehenden, mit Filter
len(zahlen)Anzahl der Elemente
for i, x in enumerate(zahlen):Schleife mit Index und Wert
for a, b in zip(liste1, liste2):Zwei Listen parallel durchlaufen
erster, *rest = zahlenEntpacken: erstes Element und Rest als Liste
sum(zahlen), min(zahlen), max(zahlen)Summe, kleinster und größter Wert

Dictionaries, Sets, Tupel

person = {"name": "Ada", "alter": 36}Dictionary anlegen
person.get("ort", "unbekannt")Wert lesen, mit Standardwert statt KeyError
for k, v in person.items():Über Schlüssel und Werte laufen
{**a, **b}Zwei Dictionaries zusammenführen; ab 3.9 auch a | b
{k: v for k, v in paare}Dict Comprehension
person.setdefault("tags", []).append("x")Schlüssel anlegen, falls er fehlt, und gleich nutzen
from collections import CounterHäufigkeiten zählen: Counter(wörter).most_common(3)
from collections import defaultdictDictionary mit Standardwert: defaultdict(list)
eindeutig = set(liste)Set: Duplikate entfernen; Reihenfolge geht verloren
a & b, a | b, a - bSchnittmenge, Vereinigung, Differenz von Sets
punkt = (3, 4)Tupel: unveränderliche Folge, auch als Dictionary-Schlüssel nutzbar

Kontrollfluss

if x > 0: … elif x == 0: … else: …Bedingungen; Blöcke werden durch Einrückung gebildet
for i in range(5):Schleife von 0 bis 4; range(1, 11, 2) ergibt 1, 3, 5, 7, 9
while bedingung:Schleife, solange die Bedingung wahr ist; break und continue wie üblich
wert = a if bedingung else bBedingter Ausdruck (ternärer Operator)
match befehl: case "start": … case _: …Strukturelles Pattern Matching (ab 3.10)
if (n := len(daten)) > 10:Walross-Operator: zuweisen und gleichzeitig prüfen (ab 3.8)

Funktionen und Klassen

def gruss(name, gruss="Hallo"): return f"{gruss}, {name}"Funktion mit Standardwert für ein Argument
def summe(*args, **kwargs):Beliebig viele Positions- und Schlüsselwortargumente
def f(x: int) -> str:Typ-Hinweise; werden zur Laufzeit nicht geprüft
quadrat = lambda x: x * xKleine anonyme Funktion
class Konto: def __init__(self, inhaber): self.inhaber = inhaberKlasse mit Konstruktor
from dataclasses import dataclass@dataclass erzeugt __init__, __repr__ und Vergleiche automatisch
@propertyMethode wie ein Attribut lesen
if __name__ == "__main__":Code nur ausführen, wenn die Datei direkt gestartet wird

Dateien und Daten

with open("daten.txt", encoding="utf-8") as f: text = f.read()Datei lesen; with schließt sie automatisch
with open("aus.txt", "w", encoding="utf-8") as f: f.write(text)Datei schreiben; "a" hängt an
for zeile in open("log.txt", encoding="utf-8"):Große Datei Zeile für Zeile lesen
from pathlib import PathPath("ordner").glob("*.csv") und Path("a.txt").read_text()
import json daten = json.loads(text)JSON lesen; json.dumps(daten, ensure_ascii=False, indent=2) schreibt
import csv for zeile in csv.DictReader(f):CSV-Datei als Dictionaries je Zeile lesen
import tomllibTOML-Dateien lesen, etwa pyproject.toml (ab 3.11)
from datetime import datetime datetime.now().isoformat()Aktuelles Datum und Uhrzeit als ISO-8601-Text

Fehlerbehandlung

try: … except ValueError as e: … finally: …Ausnahme abfangen; finally läuft immer
raise ValueError("Ungültiger Wert")Eigene Ausnahme auslösen
assert x > 0, "x muss positiv sein"Annahme prüfen; wird mit python -O übersprungen
import logging logging.basicConfig(level=logging.INFO)Protokollierung statt print einrichten

Umgebung, pip und venv

python -m venv .venvPython venv: virtuelle Umgebung im Ordner .venv anlegen
source .venv/bin/activateUmgebung aktivieren (Linux, macOS)
.venv\Scripts\activateUmgebung aktivieren (Windows); verlassen mit deactivate
python -m pip install requestsPaket installieren, sicher für die gerade genutzte Python-Version
python -m pip install -r requirements.txtAlle Abhängigkeiten aus einer Datei installieren
python -m pip freeze > requirements.txtInstallierte Pakete mit Versionen festhalten
python -m http.server 8000Aktuellen Ordner als einfachen Webserver bereitstellen
python -m json.tool daten.jsonJSON-Datei formatiert ausgeben
python -i skript.pySkript ausführen und danach in der interaktiven Konsole bleiben

Alles läuft in Ihrem Browser. Eingaben verlassen Ihr Gerät nicht.

Python kompakt

Dieser Python-Spickzettel fasst 72 häufig gebrauchte Python Befehle und Schreibweisen zusammen: Strings und f-String-Formatierung, Listen, Dictionaries und Sets, Schleifen, Funktionen und Klassen, Dateien und JSON, Fehlerbehandlung sowie pip und Python venv. Jeder Eintrag hat ein kurzes Beispiel, das Sie mit einem Klick kopieren können.

Python lebt von wenigen, gut lesbaren Bausteinen. Eine List Comprehension wie [x * 2 for x in zahlen if x > 1] ersetzt eine ganze Schleife, ein f-String wie f"{preis:.2f} €" formatiert Zahlen, und with open(…) sorgt dafür, dass Dateien wieder geschlossen werden. Geben Sie beim Öffnen von Textdateien immer encoding="utf-8" an; unter Windows ist sonst je nach Version und Einstellung eine andere Kodierung voreingestellt.

Die Beispiele gelten für Python 3; wo eine neuere Version nötig ist, steht sie dabei. Für Projekte empfiehlt sich je Projekt eine eigene virtuelle Umgebung, damit sich Paketversionen nicht in die Quere kommen. Anders als ein englisches Python Cheat Sheet erklärt diese Liste alles auf Deutsch. Für reguläre Ausdrücke mit dem Modul re gibt es den Regex-Spickzettel.

Anleitung: Python-Spickzettel in 3 Schritten

  1. Wählen Sie eine Gruppe wie „Strings“, „Listen“ oder „Dateien“ oder suchen Sie nach einem Stichwort.
  2. Lesen Sie Beispiel und Erklärung; Ergebnisse stehen als Kommentar hinter #.
  3. Kopieren Sie das Beispiel mit „Kopieren“ in Ihren Editor oder die Python-Konsole.

Typische Anwendungsfälle

  • Beim Einstieg in Python die wichtigsten Schreibweisen an einem Ort haben.
  • Für Skripte zur Datenaufbereitung schnell Datei-, JSON- und CSV-Beispiele finden.
  • Beim Wechsel aus JavaScript oder Java die Python-Entsprechung nachschlagen.
  • Eine virtuelle Umgebung mit venv und pip korrekt anlegen.
Fragen

Häufige Fragen

Was ist eine List Comprehension?

Eine kompakte Schreibweise, um aus einer Folge eine neue Liste zu bauen: [ausdruck for x in folge if bedingung]. Sie ist meist kürzer und etwas schneller als eine Schleife mit append. Für sehr verschachtelte Logik bleibt eine normale Schleife lesbarer.

Warum python -m pip statt pip?

python -m pip installiert sicher in genau die Python-Version, die Sie mit python aufrufen. Ein einzelnes pip kann zu einer anderen Installation gehören, wenn mehrere Versionen vorhanden sind.

Wie aktiviere ich eine virtuelle Umgebung unter Windows?

In der Eingabeaufforderung mit .venv\Scripts\activate, in PowerShell mit .venv\Scripts\Activate.ps1. Falls PowerShell das Skript blockiert, erlaubt Set-ExecutionPolicy -Scope CurrentUser RemoteSigned lokale Skripte.

Was ist der Unterschied zwischen Liste und Tupel?

Eine Liste ist veränderbar, ein Tupel nicht. Tupel eignen sich für feste Gruppen von Werten wie Koordinaten und können als Dictionary-Schlüssel dienen, Listen nicht.

Für welche Python-Version gilt der Spickzettel?

Für Python 3. Einige Beispiele brauchen neuere Versionen; das ist jeweils angegeben, etwa match ab 3.10 oder tomllib ab 3.11. Python 2 wird seit 2020 nicht mehr gepflegt.

Wie prüfe ich, welche Python-Version installiert ist?

Mit python --version oder python3 --version im Terminal. Unter Windows zeigt py --list alle über den Python-Launcher installierten Versionen.

Weitere Werkzeuge

Das könnte auch helfen

Alle 558 Werkzeuge