La fonction type () retourne le type de l'objet ou retourne un nouvel objet de type basé sur les arguments passés.
La type()
fonction a deux formes différentes:
type (objet) type (nom, bases, dict)
type () avec un paramètre d'objet unique
Si un seul objet est passé à type()
, la fonction renvoie son type.
Exemple 1: obtenir le type d'un objet
numbers_list = (1, 2) print(type(numbers_list)) numbers_dict = (1: 'one', 2: 'two') print(type(numbers_dict)) class Foo: a = 0 foo = Foo() print(type(foo))
Production
Si vous avez besoin de vérifier le type d'un objet, il est préférable d'utiliser la fonction Python isinstance () à la place. C'est parce que la isinstance()
fonction vérifie également si l'objet donné est une instance de la sous-classe.
type () Avec nom, bases et paramètres dict
Si trois paramètres sont passés à type()
, il renvoie un nouvel objet de type .
Les trois paramètres sont:
Paramètre | La description |
---|---|
Nom | un nom de classe; devient l' __name__ attribut |
les bases | un tuple qui détaille la classe de base; devient l' __bases__ attribut |
dict | un dictionnaire qui est l'espace de noms contenant les définitions du corps de la classe; devient l' __dict__ attribut |
Exemple 2: créer un objet type
o1 = type('X', (object,), dict(a='Foo', b=12)) print(type(o1)) print(vars(o1)) class test: a = 'Foo' b = 12 o2 = type('Y', (test,), dict(a='Foo', b=12)) print(type(o2)) print(vars(o2))
Production
('a': 'Foo', 'b': 12, '__module__': '__main__', '__dict__':, '__weakref__':, '__doc__': Aucun) ('a': 'Foo', 'b ': 12,' __module__ ':' __main__ ',' __doc__ ': Aucun)
Dans le programme, nous avons utilisé la fonction Python vars () qui renvoie l' __dict__
attribut. __dict__
est utilisé pour stocker les attributs accessibles en écriture de l'objet.
Vous pouvez facilement modifier ces attributs si nécessaire. Par exemple, si vous devez changer l' __name__
attribut de o1 en 'Z'
, utilisez:
o1 .__ nom = 'Z'