Die Python-Funktion help(obj) öffnet die interaktive Dokumentation für ein Objekt — Modul, Klasse, Funktion oder Methode. Im REPL ist sie das wichtigste Discovery-Werkzeug: sie zeigt die Docstrings, Signatur, Methoden-Liste und manchmal sogar Code-Beispiele. Ohne Argument öffnet help() einen interaktiven Help-Modus.

Einleitung

Pythons Builtin-Hilfe ist eine der besten unter den Mainstream-Sprachen. Jedes Modul, jede Klasse und jede Funktion kann einen Docstring haben — help() formatiert ihn schön und zeigt ihn an.

Drei häufige Aufrufformen:

  • help(obj): zeigt Doku zu einem Objekt.
  • help("name") oder help("topic"): sucht nach einem Modul- oder Topic-Namen.
  • help() (ohne Argumente): startet den interaktiven Help-Browser.

Hinter den Kulissen nutzt help() das pydoc-Modul. Die gleiche Doku ist auch über die Kommandozeile verfügbar — python -m pydoc str oder python -m pydoc -b für eine HTML-Variante im Browser.

Syntax

Python Syntax
help()              # interaktiv
help(object)
help("modul.name")  # Topic-Suche
Parameter
object

Beliebiges Python-Objekt (Modul, Klasse, Funktion, Methode, Typ) oder String mit Modul-/Topic-Name.

Rückgabewert

None. help() ist nur wegen seines Seiteneffekts (Anzeige) interessant.

Beispiele

Built-in Funktion

help() zeigt Signatur und Docstring — perfekt zum schnellen Nachschlagen:

Python Beispiel
help(len)
# Ausgabe (gekürzt):
# Help on built-in function len in module builtins:
#
# len(obj, /)
#     Return the number of items in a container.

Modul-Dokumentation

Auf Modul-Ebene zeigt help() alle exportierten Namen mit ihren Docstrings:

Python Beispiel
import json
help(json)
# Zeigt: NAME, DESCRIPTION, FUNCTIONS (loads, dumps, ...), CLASSES, ...

Eigene Klasse mit Docstrings

Wer eigene Klassen mit Docstrings versieht, profitiert direkt im REPL:

Python Beispiel
class Calculator:
    """Ein einfacher Taschenrechner.

    Methoden:
      add(a, b)  — Summe zweier Zahlen
      sub(a, b)  — Differenz
    """

    def add(self, a, b):
        """Addiert zwei Zahlen."""
        return a + b

    def sub(self, a, b):
        """Subtrahiert b von a."""
        return a - b

help(Calculator)
# Zeigt Docstring + Methoden mit ihren Docstrings

Praktische Beispiele

Pydoc als HTML-Server

Mit python -m pydoc -b startet ein lokaler Webserver mit der gesamten Modul-Doku — sehr angenehm zum Browsen:

Bash Shell
python -m pydoc -b
# → öffnet http://localhost:<port>/ im Browser

Pydoc auf der Kommandozeile

Schnelles Nachschlagen ohne REPL — direkt aus der Shell:

Bash Shell
python -m pydoc str.split
python -m pydoc os.path
python -m pydoc -k regex     # Keyword-Suche in Modul-Beschreibungen

Interaktives Help

help() ohne Argument startet einen Help-Modus, in dem Topics und Modul-Namen eingegeben werden können — beendet wird mit quit:

Python Beispiel
help()
# help> keywords
# help> modules
# help> str.split
# help> quit

Praktische Hinweise

  • Eigene Docstrings schreibenhelp() und IDEs zeigen sie an.
  • Konventionen für Docstrings: PEP 257, Google-Style, NumPy-Style, reStructuredText.
  • __doc__-Attribut: obj.__doc__ liefert den rohen Docstring als String.
  • inspect.signature(obj) ergibt die Signatur als Objekt — programmatisch nutzbarer.
  • Verwandte Module: pydoc, inspect, dir(), ?/?? in IPython/Jupyter (noch komfortabler).
/ Weiter

Zurück zu Builtin Functions

Zur Übersicht