Comment récupérer les noms des paramètres de fonction en Python ?

Mary-Kate Olsen
Libérer: 2024-11-03 15:19:02
original
476 Les gens l'ont consulté

How to Retrieve Function Parameter Names in Python?

Récupération des noms de paramètres de fonction en Python

En Python, les paramètres de fonction sont généralement définis à l'aide de variables d'espace réservé. Bien que ces variables soient explicitement nommées dans la définition de la fonction, elles peuvent ne pas être facilement accessibles lors de l'inspection de la fonction de l'extérieur.

inspect.getfullargspec

Le module inspect fournit un méthode pratique pour obtenir la liste d’arguments d’une fonction. En appelant inspect.getfullargspec(function), où function est la fonction cible, vous pouvez récupérer un tuple contenant les noms des paramètres.

Exemple :

<code class="python">def a_method(arg1, arg2):
    pass

print(inspect.getfullargspec(a_method))  # Output: (['arg1', 'arg2'], None, None, None)</code>
Copier après la connexion

Ceci L'exemple imprime les noms des paramètres ("arg1" et "arg2") sous forme de tuple.

inspect.signature (Python 3.3)

Depuis Python 3.3, inspect.signature () fournit une approche plus avancée pour inspecter les signatures de fonctions. Il renvoie un objet Signature qui représente les paramètres de la fonction, y compris leurs types et valeurs par défaut.

Exemple :

<code class="python">def foo(a, b, c=4, *arglist, **keywords):
    pass

print(inspect.signature(foo))  # Output: <Signature (a, b, c=4, *arglist, **keywords)></code>
Copier après la connexion

Remarque :

Certains callables, tels que les fonctions intégrées, peuvent ne pas être introspectables dans toutes les implémentations Python. Dans de tels cas, l'utilisation de inspect.getfullargspec() ou inspect.signature() peut entraîner une ValueError.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!