Perché convertire PYC in PYO?
Il formato .pyo era il bytecode ottimizzato di Python, quasi identico al .pyc ma con le istruzioni assert rimosse e, opzionalmente, le docstring eliminate. Python 3.5 ha integrato il livello di ottimizzazione nel nome del file .pyc, rendendo il .pyo ridondante e rimuovendolo completamente. Nessuna versione di Python successiva alla 3.5 legge o scrive file .pyo, quindi un convertitore da PYC a PYO non ha alcuno scopo legittimo.
Informazioni su questi formati
Un file .pyc è bytecode Python compilato che CPython memorizza automaticamente nella cache per velocizzare l'avvio. Normalmente non è necessario aprirlo o modificarlo. Per eseguirne uno,…
Apri dettagli .PYC →Un file .pyo è una cache di bytecode ottimizzata di Python (legacy) generata eseguendo Python con il flag -O o -OO. Il formato binario è identico a un file .pyc. Python 3.5 ha eliminato…
Apri dettagli .PYO →Qualità e a cosa prestare attenzione
- Per produrre bytecode ottimizzato in Python 3.5+, esegui
python -O -m compileall yourscript.py; il risultato è un file.pycdenominato conopt-1nella cartella__pycache__. - Se hai un file
.pyoda un progetto Python 2 o delle prime versioni di Python 3, puoi rinominarlo in.pyced eseguirlo con la versione di Python corrispondente - l'interprete lo caricherà se il magic number corrisponde. pyoe.pycerano funzionalmente quasi identici anche prima della rimozione, motivo per cui l'estensione separata è stata eliminata in Python 3.5.
Domande frequenti
Il formato .pyo è uguale al .pyc?
assert disabilitate, motivo per cui l'estensione separata è stata rimossa in Python 3.5.Ho un file .pyo di un vecchio progetto. Posso ancora usarlo?
.pyc; Python 3.5 e versioni successive non creano file .pyo ma possono comunque eseguirli.