Come posso generare un file bytecode in Python?

| | | | |

Il bytecode viene caricato a runtime in Python e interpretato dalla macchina virtuale, che è un pezzo di codice che legge ogni istruzione nel bytecode ed esegue qualsiasi operazione specificata.

Il bytecode viene generato automaticamente nel volume la stessa directory del file .py quando il modulo python viene importato per la prima volta, o quando il sorgente è successivo al file attualmente compilato. La prossima volta che il programma verrà eseguito, l`interprete Python utilizzerà questo file per saltare la fase di compilazione.

L`esecuzione dello script non è considerata un`importazione e nessun file .pyc sarà generato. Ad esempio, scriviamo un file di script abc.py, che importi un altro modulo xyz.py. Ora esegui il file abc.py , verrà generato xyz .pyc perché xyz è importato, ma abc.pyc non lo farà essere generato perché abc.py non è importato.

Ma ci sono moduli e comandi integrati py_compile e compileall che semplificano la creazione di un file pyc.

  1. Utilizzo di py_compile.compile : il modulo py_compile può compilare manualmente qualsiasi modulo. Un modo è usare interattivamente la funzione py_compile.compile in questo modulo:
    > > > importa py_compile > > > py_compile.compile (`abc.py`) 

    Questo scriverà .pyc nella stessa posizione di abc.py.

  2. Utilizzando py_compile. main() : compila più file contemporaneamente.
    > > > importa py_compile > > > py_compile.main ([`File1.py`,` File2.py`, `File3.py`]) 
  3. Utilizzo della funzione compileall.compile_dir() : compila ogni file python presente nella directory fornita.
    > > > importa compila tutto > > > compileall.compile_dir (nome directory) 
  4. Utilizzo di py_compile nel terminale:
    $ python -m py_compile File1.py File2.py File3.py ... 

    Oppure per compilare i file in modo interattivo

    $ python -m py_compile - File1.py File2.py File3.py. ... ... 
  5. Utilizzo di compileall in un terminale: questo comando passerà automaticamente in modo ricorsivo alle sottodirectory e creerà file .pyc per tutti i file python che trova.
    $ python -m compileall 

Nota . Il modulo compileall e py_compile fa parte della libreria standard di Python, quindi non è necessario installare nulla in più per utilizzarlo.

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

Questo articolo è stato concesso per gentile concessione di Shubham Bansal . Se sei come Python.Engineering e desideri contribuire, puoi anche scrivere un articolo utilizzando contribuire.python.engineering o pubblicando un articolo contribuire @ python.engineering. Guarda il tuo articolo che appare sulla home page di Python.Engineering e aiuta altri fanatici.

Come posso generare un file bytecode in Python? _files: Questions

Come posso generare un file bytecode in Python? File handling: Questions

Shop

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

$

Best laptop for Zoom

$499

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