Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment réparer : SyntaxError : l’argument de position suit l’argument de mot-clé



Une erreur que vous pouvez rencontrer en Python est :

SyntaxError: positional argument follows keyword argument

Cette erreur se produit lorsque vous utilisez un argument de position dans une fonction après avoir utilisé un argument de mot-clé .

Voici la différence entre les deux :

Les arguments positionnels sont ceux qui n’ont pas de « mot-clé » devant eux.

  • Exemple : ma_fonction(2, 2)

Les arguments de mots-clés sont ceux qui comportent un « mot-clé » devant eux.

  • Exemple : ma_fonction(a=2, b=2)

Si vous utilisez un argument de position après un argument de mot-clé, Python générera une erreur.

  • Exemple : ma_fonction(a=2, 2)

L’exemple suivant montre comment cette erreur peut se produire dans la pratique.

Exemple : un argument de position suit un argument de mot-clé

Supposons que nous ayons la fonction suivante en Python qui multiplie deux valeurs puis divise par une troisième :

def do_stuff(a, b):
    return a * b / c

Les exemples suivants montrent des manières valides et non valides d’utiliser cette fonction :

Voie valide n°1 : tous les arguments positionnels

Le code suivant montre comment utiliser notre fonction avec tous les arguments positionnels :

do_stuff(4, 10, 5)

8.0

Aucune erreur n’est générée car Python sait exactement quelles valeurs utiliser pour chaque argument de la fonction.

Méthode valide n°2 : tous les arguments de mots clés

Le code suivant montre comment utiliser notre fonction avec tous les arguments de mots clés :

do_stuff(a=4, b=10, c=5)

8.0

Encore une fois, aucune erreur n’est générée car Python sait exactement quelles valeurs utiliser pour chaque argument de la fonction.

Méthode valide n°3 : arguments de position avant les arguments de mots clés

Le code suivant montre comment utiliser notre fonction avec les arguments de position utilisés avant les arguments de mots-clés :

do_stuff(4, b=10, c=5)

8.0

Aucune erreur n’est générée car Python sait que la valeur 4 doit être attribuée à l’argument a .

Manière invalide : arguments de position après les arguments de mots clés

Le code suivant montre comment nous pouvons tenter d’utiliser la fonction avec des arguments de position utilisés après les arguments de mots-clés :

do_stuff(a=4, 10, 5)

SyntaxError: positional argument follows keyword argument

Une erreur est générée car nous avons utilisé des arguments de position après les arguments de mots-clés.

Plus précisément, Python ne sait pas si les valeurs 10 et 5 doivent être affectées aux arguments b ou c , il est donc incapable d’exécuter la fonction.

Ressources additionnelles

Les didacticiels suivants expliquent comment corriger d’autres erreurs courantes en Python :

Comment réparer KeyError dans Pandas
Comment réparer : ValueError : impossible de convertir le float NaN en entier
Comment réparer : ValueError : les opérandes n’ont pas pu être diffusés avec les formes

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *