Étant donné une fonction telle que :
def a_method(arg1, arg2): pass
Récupérer les noms de paramètres sous la forme d'un tuple de chaînes, telles que as ("arg1", "arg2").
Utilisez le module d'inspection pour l'introspection des objets de code :
<code class="python">>>> inspect.getfullargspec(a_method) (['arg1', 'arg2'], None, None, None)</code>
Cela renvoie la liste d'arguments, un tuple de valeurs par défaut, un dictionnaire d'arguments de mots-clés et le nombre d'arguments de mots-clés uniquement.
L'exemple suivant présente l'introspection des callables avec des arguments variables :
<code class="python">>>> def foo(a, b, c=4, *arglist, **keywords): pass >>> inspect.getfullargspec(foo) (['a', 'b', 'c'], 'arglist', 'keywords', (4,))</code>
Remarque : Certaines fonctions intégrées définies en C ne peuvent pas être introspectées, ce qui entraîne une ValueError lors de l'utilisation de inspect.getfullargspec().
Pour les versions 3.3 et supérieures de Python, inspect.signature() fournit une vue plus complète des signatures appelables :
<code class="python">>>> inspect.signature(foo) <Signature (a, b, c=4, *arglist, **keywords)></code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!