17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

168<br />

Éléments du langage<br />

DEUXIÈME PARTIE<br />

isinstance : isinstance(objet, classe ou type ou tuple) -> booléen<br />

Permet de tester si un objet est d’un type donné ou une instance d’une classe. Un<br />

tuple peut aussi être fourni pour représenter une liste de types et/ou classes pour<br />

définir si l’objet appartient à l’un des types ou l’une des classes.<br />

Souvent utilisé pour contrôler des paramètres entrants dans une méthode ou une<br />

fonction, isinstance permet de pallier le non-typage des variables.<br />

Test des types et classes<br />

>>> isinstance('test', (unicode, str))<br />

True<br />

>>> isinstance('test', int)<br />

False<br />

>>> isinstance(['test', 'deux'], list)<br />

True<br />

>>> from UserDict import UserDict<br />

>>> dict = UserDict()<br />

>>> isinstance(dict, UserDict)<br />

True<br />

Voir aussi : issubclass.<br />

issubclass : issubclass(C, B) -> bool<br />

Vérifie si la classe C dérive de la classe B. Comme pour isinstance,B peut être remplacé<br />

par un tuple représentant une liste de classes. issubclass renvoie alors vrai si C<br />

hérite au moins de l’une des classes de la séquence.<br />

Test de l’héritage<br />

>>> class B:<br />

... pass<br />

...<br />

>>> class A(B):<br />

... pass<br />

...<br />

>>> issubclass(A, B)<br />

True<br />

>>> issubclass(B, A)<br />

False<br />

Voir aussi : isinstance.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!