Python help() Funktion
Die Python help() Funktion wird verwendet, um die Dokumentation von spezifizierten Modulen, Klassen, Funktionen, Variablen usw. zu erhalten. Diese Methode wird in der Regel mit der Python-Interpreter-Konsole verwendet, um Details über Python-Objekte zu erhalten.
Verwendung der Python help() Funktion
Die Syntax der Python help() Funktion ist:
help([object])
Wenn kein Argument angegeben wird, startet das interaktive Hilfe-System auf der Interpreter-Konsole.
In der Python-Hilfe-Konsole können wir Modul-, Klassen-, Funktionsnamen angeben, um deren Hilfe-Dokumentation zu erhalten. Einige Beispiele sind:
help> True
help> collections
help> builtins
help> modules
help> keywords
help> symbols
help> topics
help> LOOPING
Um die Hilfe-Konsole zu verlassen, tippe „quit“. Wir können auch direkt aus der Python-Konsole die Hilfe-Dokumentation erhalten, indem wir einen Parameter an die help() Funktion übergeben.
>>> help('collections')
>>> help(print)
>>> help(globals)
Lassen Sie uns sehen, was die Ausgabe der help() Funktion für die globals() Funktion ist.
>>> help('builtins.globals')
Help on built-in function globals in builtins:
builtins.globals = globals()
Return the dictionary containing the current scope's global variables.
NOTE: Updates to this dictionary *will* affect name lookups in the current global scope and vice-versa.
Definieren der help() Funktion für Benutzerdefinierte Klassen und Funktionen
Wir können die Ausgabe der help() Funktion für unsere benutzerdefinierten Klassen und Funktionen definieren, indem wir einen Docstring (Dokumentationsstring) definieren. Der erste Kommentarstring im Körper einer Methode wird normalerweise als ihr Docstring verwendet, umgeben von drei doppelten Anführungszeichen. Nehmen wir an, wir haben eine Python-Datei python_help_examples.py mit folgendem Code.
def add(x, y):
"""
This function adds the given integer arguments
:param x: integer
:param y: integer
:return: integer
"""
return x + y
class Employee:
"""
Employee class, mapped to "employee" table in Database
"""
id = 0
name = ''
def __init__(self, i, n):
"""
Employee object constructor
:param i: integer, must be positive
:param n: string
"""
self.id = i
self.name = n
Beachten Sie, dass wir Docstrings für Funktionen, Klassen und deren Methoden definiert haben. Sie sollten einem Format für die Dokumentation folgen, ich habe einen Teil davon automatisch mit der PyCharm IDE generiert. Der NumPy Docstring-Leitfaden ist ein guter Ort, um einige Ideen zur korrekten Art der Hilfe-Dokumentation zu erhalten. Lassen Sie uns sehen, wie wir diesen Docstring als Hilfe-Dokumentation in der Python-Konsole erhalten. Zuerst müssen wir dieses Skript in der Konsole ausführen, um unsere Funktions- und Klassendefinitionen zu laden. Wir können dies mit dem exec() Befehl tun.
>>> exec(open("python_help_examples.py").read())
Wir können überprüfen, dass die Funktionen und Klassendefinitionen mit dem globals() Befehl vorhanden sind.
>>> globals()
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__warningregistry__': {'version': 0}, 'add': , 'Employee': <class '__main__.Employee'>}
Beachten Sie, dass ‚Employee‘ und ‚add‘ im globalen Scope-Wörterbuch vorhanden sind. Jetzt können wir die Hilfe-Dokumentation mit der help() Funktion erhalten. Lassen Sie uns einige Beispiele ansehen.
>>> help('python_help_examples')
>>> help('python_help_examples.add')
Help on function add in python_help_examples:
python_help_examples.add = add(x, y)
This function adds the given integer arguments
:param x: integer
:param y: integer
:return: integer
(END)
>>> help('python_help_examples.Employee')
>>> help('python_help_examples.Employee.__init__')
Help on function __init__ in python_help_examples.Employee:
python_help_examples.Employee.__init__ = __init__(self, i, n)
Employee object constructor
:param i: integer, must be positive
:param n: string
(END)
Zusammenfassung
Die Python help() Funktion ist sehr hilfreich, um Details über Module, Klassen und Funktionen zu erhalten. Es ist immer die beste Praxis, Docstrings für benutzerdefinierte Klassen und Funktionen zu definieren, um deren Verwendung zu erklären.