Comprendre comment fonctionne Python pour optimiser son code

Magazine
Marque
GNU/Linux Magazine
Numéro
158
Mois de parution
mars 2013
Spécialité(s)


Résumé
Python est un langage interprété. Il se compile pour générer du bytecode qui sera exécuté par la machine virtuelle. L'idée de cet article est de faire une introduction sur le fonctionnement de ce bytecode. On ne parle ici que de CPython 3.x, le fonctionnement sous CPython 2.x étant sensiblement différent et celui pour PyPy, IronPython ou encore Jython étant réellement différent.

1. Objets code

1.1 Tout est objet

En Python, tout est objet. Si les instances sont des objets, les classes sont également des objets, de même que les fonctions et les méthodes. Ceci est également vrai pour le code Python lui-même :

>>> def classic_function(name):

...     print('Hello %s' % name)

...

>>> code_object = classic_function.__code__

Cet objet est une instance de type code :

>>> type(code_object)

<class 'code'>

Cet article est réservé aux abonnés. Il vous reste 96% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous