classes Python doivent être instanciées ou appelées avant de pouvoir accéder à leurs méthodes. Si vous oubliez d’instancier un objet d’une classe et essayez d’accéder à une méthode de classe, vous rencontrez une erreur indiquant "1 argument de position requis manquant : ‚Äòself‚Äô".
Dans ce guide, nous parlons de ce que signifie cette erreur et pourquoi elle est soulevée. Nous passons en revue un exemple de cette erreur en action pour vous aider à apprendre comment la corriger.
1 argument de position requis manquant : ‘self’
Les arguments de position font référence à des données qui sont passé dans une fonction. Dans une classe, chaque fonction doit recevoir la valeur "self‚". La valeur du "soi" est similaire à "ceci" en JavaScript. "auto" représente les données stockées dans un objet d’une classe.
Lorsque vous appelez une méthode de classe sans d’abord instancier un objet de cette classe, vous obtenez une erreur. C’est parce que "auto" n’a aucune valeur tant qu’un objet n’a pas été instancié.
Les erreurs les plus courantes qui sont à l’origine de l’"argument de position obligatoire manquant 1 : ‚Äòself‚Äô‚" erreur sont :
- Oublier d’instancier un objet d’une classe
- Utiliser une syntaxe incorrecte pour instancier une classe
Examinons chacune de ces causes individuellement.
Cause n¬∞1 : Oublier d’instancier un objet
Un objet doit être instancié avant de pouvoir accéder à une méthode dans une classe.< br>
Définissez une classe qui stocke des informations sur un héros dans un jeu vidéo :
81 % des participants ont déclaré qu’ils se sentaient plus confiants quant à leurs perspectives d’emploi dans la technologie après avoir assisté à un bootcamp. Soyez jumelé à un bootcamp aujourd’hui.
Le diplômé moyen d’un bootcamp a passé moins de six mois en transition de carrière, du démarrage d’un bootcamp à la recherche de son premier emploi.
Ensuite, nous ajoutons un function à notre classe. Les fonctions à l’intérieur des classes sont appelées méthodes. Cette méthode imprime le nom d’un joueur et son type de joueur :
Essayez d’accéder à notre classe afin que nous puissions créer un joueur : ;
Nous avons créé un objet qui est affecté à la variable "luke‚". Cet objet est dérivé de la classe Hero. Nous appelons la méthode show_player()
pour afficher des informations sur le joueur.