Maison > Article > développement back-end > Quelle est la différence entre les arguments positionnels et les arguments de mots clés en Python ?
Arguments de position ou de mot-clé
En Python, les arguments transmis à une fonction peuvent être positionnels ou basés sur des mots-clés. Les arguments positionnels sont attribués aux paramètres de la fonction dans l'ordre dans lequel ils apparaissent, tandis que les arguments de mots-clés sont explicitement nommés et attribués.
Comprendre les arguments de position et de mots-clés
Le texte cité dans votre question définit correctement les arguments de position comme ceux sans signe égal (par exemple, la largeur dans rectangleArea). Les arguments de mots clés, en revanche, sont suivis d'un signe égal et d'une expression qui spécifie leur valeur par défaut (par exemple, height=2).
Exemple
Considérez la fonction suivante :
<code class="py">def rectangleArea(width, height): return width * height</code>
Dans cette fonction, la largeur et la hauteur sont des arguments de position. Cependant, l'exemple fourni :
<code class="py">rectangleArea(width=1, height=2)</code>
utilise des arguments de mots clés pour définir les valeurs de largeur et de hauteur.
Confusion entre les types d'arguments
Le le texte de votre question semble confondre les arguments de position et de mot-clé avec les valeurs par défaut des paramètres de fonction. Les valeurs par défaut sont spécifiées dans les définitions de fonction, tandis que les arguments de position et de mot-clé sont utilisés dans les appels de fonction.
Clarification
Dans l'exemple ci-dessus, la fonction rectangleArea nécessite deux arguments de position , largeur et hauteur. Cependant, l'appel à la fonction transmet ces arguments à l'aide d'une syntaxe de mot-clé. Ceci est parfaitement valable en Python, car la définition de la fonction autorise à la fois les arguments de position et les arguments de mots clés.
Résumé
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!