Type Python ()

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'

Articles intéressants...