Comment reconnait-on un attribut d'une methode
logo de la Fondation Blender
RETOUR page précédente
RETOUR SOMMAIRE
 
 

Reconnaitre un Attribut d'une Méthode

Image pour la formation Blender:les nodes
Image pour la formation Blender:les nodes
Image pour la formation Blender:les nodes
6. Indices visuels dans la documentation
Dans la documentation Blender (ou autres), voici quelques indications générales pour repérer les méthodes et les attributs :
  • Méthodes :
    • Ont une signature fonctionnelle avec des paramètres (ex. select_set(state)).
    • Souvent décrites comme "Operator" ou "Function".
  • Attributs :
    • N'ont pas de paramètres.
    • Souvent décrites comme des "Properties".

7. Astuce dans un éditeur de code
Si vous utilisez un éditeur comme VSCode ou PyCharm, la distinction est souvent faite automatiquement grâce à l'autocomplétion :
  • Méthodes : Affichées avec () ou avec des icônes spécifiques.
  • Attributs : Affichés comme des valeurs simples.

Conclusion
  • Si vous voyez () à la fin d'une fonction, c'est une méthode.
  • Si vous accédez à une valeur directement, c'est un attribut.
  • Utilisez callable() ou la documentation pour une distinction claire si le contexte n'est pas évident. 😊
Pour différencier les deux types :
  • Méthodes : Souvent décrites comme des "fonctions" et se terminent par ().
    • Exemple : select_set(), keyframe_insert().
  • Attributs : Représentent des données et ne se terminent pas par ().
    • Exemple : location, name.

5. Utilisation de getattr et callable
Python permet de vérifier si un membre est une méthode (exécutable) ou un attribut (non-exécutable) :
 
4. Comment les identifier dans dir()
La fonction dir() retourne tous les attributs et méthodes d'un objet. Les méthodes se distinguent par leur nature exécutable.
Exemple :
1. Définition :
  • Attributs : Ce sont des données ou propriétés stockées dans l'objet. Ils représentent un état ou une caractéristique de l'objet.
  • Méthodes : Ce sont des fonctions définies à l'intérieur d'une class qui opèrent sur l'objet ou ses attributs. Elles réalisent une action ou une opération.

2. Différences dans leur utilisation :

Attribut

Méthode

Ne prend pas de parenthèses lors de l'accès : obj.attribut
Nécessite des parenthèses pour l'appeler : obj.methode()
Représente une valeur ou un état.
Effectue une action ou une opération.
Peut être une donnée directe (nombre, chaîne, objet, etc.).
Contient un code exécutable (fonction liée à l'objet).

3. Exemple avec un objet Blender (bpy.data.objects['Cube'])

Python Accueil