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 Tausendertrennzeichenf"{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() einseitigs.split(",")Text an einem Trennzeichen in eine Liste teilen; ohne Argument an Leerraum", ".join(liste)Liste von Strings mit Trennzeichen verbindens.replace("alt", "neu")Alle Vorkommen ersetzens.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 dreis.removeprefix("www.")Präfix entfernen, falls vorhanden (ab 3.9); removesuffix() am EndeListen
zahlen = [3, 1, 2]Liste anlegenzahlen.append(4)Element hinten anhängen; extend([5, 6]) hängt mehrere anzahlen.insert(0, 9)An Position 0 einfügenzahlen.pop()Letztes Element entfernen und zurückgeben; pop(0) das erstezahlen.remove(3)Erstes Vorkommen des Werts entfernensorted(zahlen)Sortierte Kopie; zahlen.sort() sortiert die Liste selbstsorted(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 Filterlen(zahlen)Anzahl der Elementefor i, x in enumerate(zahlen):Schleife mit Index und Wertfor a, b in zip(liste1, liste2):Zwei Listen parallel durchlaufenerster, *rest = zahlenEntpacken: erstes Element und Rest als Listesum(zahlen), min(zahlen), max(zahlen)Summe, kleinster und größter WertDictionaries, Sets, Tupel
person = {"name": "Ada", "alter": 36}Dictionary anlegenperson.get("ort", "unbekannt")Wert lesen, mit Standardwert statt KeyErrorfor 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 Comprehensionperson.setdefault("tags", []).append("x")Schlüssel anlegen, falls er fehlt, und gleich nutzenfrom 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 verlorena & b, a | b, a - bSchnittmenge, Vereinigung, Differenz von Setspunkt = (3, 4)Tupel: unveränderliche Folge, auch als Dictionary-Schlüssel nutzbarKontrollfluss
if x > 0:
…
elif x == 0:
…
else:
…Bedingungen; Blöcke werden durch Einrückung gebildetfor i in range(5):Schleife von 0 bis 4; range(1, 11, 2) ergibt 1, 3, 5, 7, 9while bedingung:Schleife, solange die Bedingung wahr ist; break und continue wie üblichwert = 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 Argumentdef summe(*args, **kwargs):Beliebig viele Positions- und Schlüsselwortargumentedef f(x: int) -> str:Typ-Hinweise; werden zur Laufzeit nicht geprüftquadrat = lambda x: x * xKleine anonyme Funktionclass Konto:
def __init__(self, inhaber):
self.inhaber = inhaberKlasse mit Konstruktorfrom dataclasses import dataclass@dataclass erzeugt __init__, __repr__ und Vergleiche automatisch@propertyMethode wie ein Attribut lesenif __name__ == "__main__":Code nur ausführen, wenn die Datei direkt gestartet wirdDateien und Daten
with open("daten.txt", encoding="utf-8") as f:
text = f.read()Datei lesen; with schließt sie automatischwith open("aus.txt", "w", encoding="utf-8") as f:
f.write(text)Datei schreiben; "a" hängt anfor zeile in open("log.txt", encoding="utf-8"):Große Datei Zeile für Zeile lesenfrom 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) schreibtimport csv
for zeile in csv.DictReader(f):CSV-Datei als Dictionaries je Zeile lesenimport tomllibTOML-Dateien lesen, etwa pyproject.toml (ab 3.11)from datetime import datetime
datetime.now().isoformat()Aktuelles Datum und Uhrzeit als ISO-8601-TextFehlerbehandlung
try:
…
except ValueError as e:
…
finally:
…Ausnahme abfangen; finally läuft immerraise ValueError("Ungültiger Wert")Eigene Ausnahme auslösenassert x > 0, "x muss positiv sein"Annahme prüfen; wird mit python -O übersprungenimport logging
logging.basicConfig(level=logging.INFO)Protokollierung statt print einrichtenUmgebung, pip und venv
python -m venv .venvPython venv: virtuelle Umgebung im Ordner .venv anlegensource .venv/bin/activateUmgebung aktivieren (Linux, macOS).venv\Scripts\activateUmgebung aktivieren (Windows); verlassen mit deactivatepython -m pip install requestsPaket installieren, sicher für die gerade genutzte Python-Versionpython -m pip install -r requirements.txtAlle Abhängigkeiten aus einer Datei installierenpython -m pip freeze > requirements.txtInstallierte Pakete mit Versionen festhaltenpython -m http.server 8000Aktuellen Ordner als einfachen Webserver bereitstellenpython -m json.tool daten.jsonJSON-Datei formatiert ausgebenpython -i skript.pySkript ausführen und danach in der interaktiven Konsole bleibenKein Eintrag gefunden. Versuchen Sie einen anderen Begriff oder wählen Sie „Alle Gruppen“.
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
- Wählen Sie eine Gruppe wie „Strings“, „Listen“ oder „Dateien“ oder suchen Sie nach einem Stichwort.
- Lesen Sie Beispiel und Erklärung; Ergebnisse stehen als Kommentar hinter
#. - 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
venvundpipkorrekt anlegen.
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.
Das könnte auch helfen
HTTP-Statuscodes
Alle gängigen HTTP-Statuscodes von 100 bis 511 mit Bedeutung, typischer Ursache und Suche.
ÖffnenHTTP-Header-Referenz
Wichtige Anfrage- und Antwort-Header mit Bedeutung und Beispiel, durchsuchbar.
ÖffnenMIME-Typen
Über 150 MIME-Typen nachschlagen: Dateiendung zu Content-Type und umgekehrt.
ÖffnenGit-Befehle
Git-Spickzettel: die wichtigsten Befehle nach Aufgaben gruppiert, durchsuchbar und kopierbar.
ÖffnenBash-Befehle
Bash- und Linux-Befehle für Dateien, Text, Prozesse und Netzwerk, mit Suche und Kopieren.
ÖffnenPort-Liste
Bekannte TCP- und UDP-Ports von 20 bis 51820 mit Dienst und Hinweis, durchsuchbar.
Öffnen