Home

PEP 8 Spickzettel: Regelübersicht (Ruff / Pyright)

reference code-quality pep8 ruff pyright cheatsheet

Kompakte Übersicht der wichtigsten PEP 8-/Qualitäts-Regeln mit ihren Ruff-Codes. Gedacht zum parallelen Öffnen neben einer Aufgabe (z. B. im Testat): Code finden, Regelcode in dieser Tabelle nachschlagen.

Zugrunde gelegt wird die Kurs-Konfiguration: Zeilenlänge 88, Regelgruppen E, W, F, N (pycodestyle, Pyflakes, pep8-naming).

Code Kategorie Regel Beispiel (falsch → richtig)
E225 Leerzeichen Fehlendes Leerzeichen um Operator x=5 → x = 5
E231 Leerzeichen Fehlendes Leerzeichen nach Komma f(a,b) → f(a, b)
E262 Kommentare Inline-Kommentar muss mit '# ' beginnen x = 1 ## text → x = 1 # text
E265 Kommentare Block-Kommentar muss mit '# ' beginnen #text → # text
E301 Leerzeilen Erwartete 1 Leerzeile (zwischen Methoden), 0 gefunden 1 Leerzeile zwischen Methoden einer Klasse
E302 Leerzeilen Erwartete 2 Leerzeilen vor Top-Level-Definition 2 Leerzeilen vor Funktionen/Klassen auf Modulebene
E305 Leerzeilen Erwartete 2 Leerzeilen nach Funktion/Klasse 2 Leerzeilen nach einer Definition vor weiterem Code
E401 Imports Mehrere Imports in einer Zeile import os, sys → separate Zeilen
E501 Zeilenlänge Zeile zu lang (> 88 Zeichen) Zeile umbrechen oder kürzen
E701 Anweisungen Mehrere Anweisungen auf einer Zeile (Doppelpunkt) if x: return y → separate Zeilen
E711 Vergleiche Vergleich mit None muss 'is' / 'is not' sein x == None → x is None
E712 Vergleiche Vergleich mit True/False vermeiden x == True → if x:
E721 Vergleiche Typen nicht mit '==' vergleichen type(x) == int → isinstance(x, int)
E722 Fehlerbehandlung Kein nacktes except: verwenden except: → except ValueError:
E741 Benennung Mehrdeutiger Name (l, O, I) l = 5 → count = 5
F401 Imports Modul importiert, aber nie verwendet Ungenutzten Import entfernen
F841 Variablen Lokale Variable zugewiesen, aber nie verwendet Ungenutzte Variable entfernen
N801 Benennung Klassenname sollte CapWords/PascalCase sein class my_class → class MyClass
N802 Benennung Funktions-/Methodenname sollte snake_case sein def MyFunc() → def my_func()
N803 Benennung Argumentname sollte snake_case sein def f(myArg) → def f(my_arg)
N806 Benennung Variable in Funktion sollte snake_case sein myVar = 5 → my_var = 5
N816 Benennung Variable im globalen Scope nicht mixedCase maxSize = 100 → max_size / MAX_SIZE
© 2026 Dominik Mueller   •  Powered by Soopr   •  Theme  Moonwalk