Comment puis-je transmettre un dictionnaire comme argument de mot-clé à une fonction Python ?

Patricia Arquette
Libérer: 2024-11-23 14:14:16
original
737 Les gens l'ont consulté

How Can I Pass a Dictionary as Keyword Arguments to a Python Function?

Déballage d'un dictionnaire en tant que paramètres de mots clés en Python

Lors de l'appel de fonctions en Python, vous pouvez rencontrer des scénarios dans lesquels vous souhaitez transmettre un dictionnaire contenant paramètres qui correspondent aux noms d'arguments de la fonction.

Considérez le code suivant extrait :

d = dict(param='test')

def f(param):
    print(param)

f(d)
Copier après la connexion

Ce code imprime le dictionnaire, plutôt que sa valeur. Pour résoudre ce problème, vous pouvez utiliser l'opérateur ** pour décompresser le dictionnaire, ce qui entraîne un appel qui fournit le paramètre par son nom :

f(**d)
Copier après la connexion

Cet extrait de code affiné imprime "test" comme prévu.

Le même principe s'applique lors de la transmission de plusieurs paramètres :

d = dict(p1=1, p2=2)
def f2(p1, p2):
    print(p1, p2)
f2(**d)
Copier après la connexion

L'utilisation de l'opérateur ** garantit que les paires clé-valeur du dictionnaire sont traitées comme des arguments individuels du fonction. En décompressant le dictionnaire de cette manière, vous pouvez transmettre de manière transparente les paramètres par nom et obtenir les résultats souhaités.

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