Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Python

Classes et objets anonymes en Python : Exploration avancée

La fonction intégrée type() de Python retourne la classe à laquelle appartient un objet. En Python, une classe — qu'elle soit intégrée ou définie par l'utilisateur — est un objet de type class.

Exemple

class MaClasse:
def __init__(self):
self.mavar = 10
obj = MaClasse()
print('classe de int', type(int))
print('classe de list', type(list))
print('classe de dict', type(dict))
print('classe de MaClasse', type(MaClasse))
print('classe de obj', type(obj))

Sortie :

classe de int <class 'type'>
classe de list <class 'type'>
classe de dict <class 'type'>
classe de MaClasse <class 'type'>

type() possède une version à trois arguments :

Syntaxe

nouvelle_classe = type(nom, bases, dico)

Cette syntaxe permet de créer une classe dynamiquement. Les trois arguments sont :

Créer une classe anonyme

On peut créer une classe anonyme avec type(). L'argument nom est une chaîne vide, le second est un tuple contenant object (toute classe hérite de object), le troisième est un dictionnaire vide pour l'instant.

Anon = type('', (object,), {})

Créer un objet anonyme

Pour instancier cette classe anonyme :

obj = Anon()
print("type de obj:", type(obj))

Résultat :

type de obj: <class '__main__.'>

Exemple complet : classe et objet anonymes avec attributs et méthodes

On peut ajouter dynamiquement des variables et méthodes d'instance :

def getA(self):
return self.a
obj = type('', (object,), {'a': 5, 'b': 6, 'c': 7, 'getA': getA, 'getB': lambda self: self.b})()
print(obj.getA(), obj.getB())

Sortie :

5 6

Python

  1. Maîtriser le contrôle de boucles en Python : break et continue
  2. Maîtriser l'héritage Python : concepts, syntaxe et exemples pratiques
  3. Créer des archives ZIP en Python : du répertoire complet à la sélection personnalisée de fichiers
  4. Maîtriser les expressions régulières en Python : Guide pratique
  5. Comprendre les variables globales, locales et non locales en Python
  6. Feuille de triche Python Basics : Types de données essentiels, Dictionnaires, Listes & Fonctions
  7. Python list.index() : Comment Trouver les Positions d'Éléments avec Exemples Pratiques
  8. Accéder aux Données Web avec urllib de Python : Guide Pratique
  9. Questions d'entretien Python & Réponses : Guide ultime de préparation