Python-Spickzettel
Eine durchsuchbare, druckbare Python-3-Referenz — Syntax, Datenstrukturen, Comprehensions, Funktionen, Klassen, Dateien und die Standardbibliothek. Kostenlos.
Variablen & Typen
10x = 1
Variable zuweisen (dynamisch typisiert)
x: int = 1
Optionale Typ-Annotation
a, b = 1, 2
Mehrfachzuweisung
type(x)
Typ eines Werts ermitteln
int('42')
String in Integer umwandeln
str(42)
Wert in String umwandeln
isinstance(x, int)
Typprüfung
None
Der null-/Abwesenheitswert
x = y = 0
Verkettete Zuweisung
PI: Final = 3.14
Konstanten-Hinweis (typing.Final)
Strings
11f'Hello {name}'
f-string-Interpolation
len(s)
String-Länge
s.upper()
In Großbuchstaben umwandeln
s.strip()
Umgebende Leerzeichen entfernen
s.split(',')
In eine Liste aufteilen
','.join(items)
Liste mit Trennzeichen verbinden
s.replace('a', 'b')
Teilstrings ersetzen
'a' in s
Mitgliedschaftstest
s[1:4]
Zeichen 1 bis 3 slicen
s[::-1]
String umkehren
s.startswith('a')
Präfix prüfen
Listen & Tupel
10a = [1, 2, 3]
Liste erstellen
a.append(4)
Element am Ende hinzufügen
a.insert(0, x)
An einem Index einfügen
a.pop()
Letztes Element entfernen und zurückgeben
a[1:3]
Teilliste slicen
sorted(a, reverse=True)
Sortierte Kopie zurückgeben
a.sort(key=len)
In place nach Schlüssel sortieren
len(a)
Anzahl der Elemente
t = (1, 2)
Unveränderliches Tupel
first, *rest = a
Mit Stern entpacken
Dicts & Sets
10d = {'k': 'v'}
Dictionary erstellen
d['k']
Wert per Schlüssel zugreifen
d.get('k', default)
Mit Fallback holen
d.keys() / d.values()
Schlüssel oder Werte ansehen
d.items()
Schlüssel-Wert-Paare iterieren
{**a, **b}
Dictionaries zusammenführen
a | b
Dict-/Set-Vereinigungsoperator
del d['k']
Schlüssel entfernen
s = {1, 2, 3}
Set erstellen (eindeutige Werte)
set(a) & set(b)
Schnittmenge bilden
Comprehensions
8[x * 2 for x in a]
List-Comprehension
[x for x in a if x > 0]
Gefilterte Comprehension
{x: x**2 for x in a}
Dict-Comprehension
{x for x in a}
Set-Comprehension
(x for x in a)
Generator-Ausdruck (lazy)
[y for row in m for y in row]
Mit verschachtelten Schleifen abflachen
[a if c else b for x in items]
Bedingter Wert in Comprehension
sum(x for x in a)
Generator aggregieren
Kontrollfluss
9if x > 0:\n ...
Bedingung (Einrückung zählt)
elif / else:
Zusätzliche Verzweigungen
a if cond else b
Ternärer Ausdruck
for x in range(10):
Über einen Bereich iterieren
for i, x in enumerate(a):
Schleife mit Index
for a, b in zip(x, y):
Zwei Iterables zusammen iterieren
while cond:
Schleife, solange true
break / continue
Iteration beenden/überspringen
match x:\n case 1: ...
Strukturelles Pattern-Matching (3.10+)
Funktionen
8def f(a, b=1): return a + b
Funktion mit Standardargument
def f(*args, **kwargs):
Variadische Positions- + Keyword-Args
f(name='Sam')
Mit Keyword-Argument aufrufen
lambda x: x + 1
Anonyme Inline-Funktion
def f(a: int) -> int:
Typ-Hinweise für Params und Rückgabe
@decorator
Funktion mit Decorator umhüllen
yield value
Wert aus einem Generator liefern
global x / nonlocal x
Variable aus äußerem Scope neu binden
Klassen
9class A(Base):
Klasse mit Vererbung
def __init__(self, x):
Konstruktor / Initializer
self.x = x
Instanz-Attribut
def __str__(self):
String-Darstellung
@property
Berechnetes schreibgeschütztes Attribut
@staticmethod / @classmethod
Statische und Klassenmethoden
super().__init__()
Eltern-Initializer aufrufen
@dataclass
init/repr/eq automatisch generieren
isinstance(obj, A)
Instanztyp prüfen
Dateien, Fehler & Module
9with open('f.txt') as fh:
Datei öffnen (auto-geschlossen)
fh.read() / fh.readlines()
Dateiinhalt lesen
open('f.txt', 'w').write(s)
In eine Datei schreiben
try:\n ...\nexcept ValueError as e:
Bestimmte Exception abfangen
raise ValueError('bad')
Exception auslösen
finally:
Immer ausgeführter Cleanup-Block
import os
Modul importieren
from math import sqrt
Bestimmten Namen importieren
import numpy as np
Mit Alias importieren
Kein Eintrag passt zu „:q“.
Brauchen Sie Hilfe?
Ein Problem mit diesem Tool gefunden? Sagen Sie es unserem Team.