Comment générer un fichier bytecode en Python ?

| | | | |

Le bytecode est chargé au moment de l`exécution dans Python et interprété par la machine virtuelle, qui est un morceau de code qui lit chaque instruction dans le bytecode et effectue toute opération spécifiée.

Le bytecode est automatiquement généré dans le volume le même répertoire que le fichier .py lorsque le module python est importé pour la première fois, ou lorsque la source est postérieure au fichier actuellement compilé. La prochaine fois que le programme sera exécuté, l`interpréteur Python utilisera ce fichier pour ignorer l`étape de compilation.

L`exécution du script n`est pas considérée comme une importation et aucun fichier .pyc ne sera généré. Par exemple, écrivons un fichier de script abc.py, qui importe un autre module xyz.py. Exécutez maintenant le fichier abc.py , xyz .pyc sera généré car xyz est importé, mais abc.pyc ne le sera pas être généré car abc.py n`est pas importé.

Mais il existe des modules et des commandes intégrés py_compile et compileall qui facilitent la création d`un fichier pyc.

  1. Utilisation de py_compile.compile : le module py_compile peut compiler manuellement n`importe quel module. Une façon consiste à utiliser de manière interactive la fonction py_compile.compile dans ce module :
    > > > importer py_compile > > > py_compile.compile (`abc.py`) 

    Ceci écrira .pyc au même emplacement que abc.py.

  2. En utilisant py_compile. main () : compile plusieurs fichiers en même temps. > ; > > importer py_compile > > > py_compile.main ([`File1.py`,` File2.py`, `File3.py`])
  3. Utilisation de la fonction compileall.compile_dir () : compile chaque fichier python présent dans le répertoire fourni. > ; > > importer compileall > > > compileall.compile_dir (nom du répertoire)
  4. Utilisation de py_compile dans le terminal :
    $ python -m py_compile File1.py File2.py File3.py ... 

    Ou pour compiler des fichiers de manière interactive

    $ python -m py_compile - File1.py File2.py File3.py. ... ... 
  5. Utilisation de compileall dans un terminal : cette commande naviguera automatiquement de manière récursive vers les sous-répertoires et créera des fichiers .pyc pour tous les fichiers python qu`elle trouve.
    $ python -m compileall 

Remarque . Le module compileall et py_compile fait partie de la bibliothèque standard Python, vous n`avez donc pas besoin d`installer quoi que ce soit de plus pour l`utiliser.

Liens :
1. https://docs.python.org/3/library/py_compile .html
2. https://docs.python.org/2/library/compileall .html
3. Effbot

Cet article est une gracieuseté de Shubham Bansal . Si vous êtes Python.Engineering et que vous souhaitez contribuer, vous pouvez également écrire un article en utilisant contribuer.python.engineering ou en publiant un article contribuer @ python.engineering. Voir votre article apparaître sur la page d`accueil de Python.Engineering et aider d`autres geeks.

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method