.PYO

PYO-fil

Python Optimized Bytecode File (legacy)
Still et spørsmål
HURTIGSVAR

En .pyo-fil er en utdatert (legacy) Python-optimalisert bytekode-cache generert ved å kjøre Python med flagget -O eller -OO. Det binære formatet er identisk med en .pyc-fil. Python 3.5 fjernet filendelsen .pyo i 2015 (PEP 488), så hvis du ser en i dag, stammer den fra Python 2 eller Python 3.0-3.4. Du kjører den fra kommandolinjen med en samsvarende Python-versjon, eller dekompilerer den tilbake til .py med decompyle3 eller uncompyle6.

Utvikler: Python Software Foundation (CPython) Kategori: Utviklerfiler Åpen standard MIME: application/x-python-code
ÅPNES PÅ Windows macOS Linux Web
Relatert: .DO · .MD · .HEX · .XSD

På denne siden

19k+ filendelser indeksert
Sist vurdert Jun 27, 2026

Usikker på hva filen din er?

Slipp hvilken som helst fil inn i vår identifikator - vi leser bare de første bytene for å navngi formatet.

Identifiser en fil

Hva er PYO-filformatet?

En .pyo-fil er en utdatert Python-optimalisert bytekode-fil produsert av CPython-tolkeren når den kjøres med flagget -O (optimaliser) eller -OO. Ved å bruke -O fjernes assert-setninger fra den kompilerte bytekoden; ved bruk av -OO fjernes i tillegg alle docstrings, noe som reduserer filstørrelsen noe.

Internt er .pyo-filer identiske i format, byte-for-byte, med .pyc-filer: en 16-byte header (4-byte versjonsspesifikt «magic number», 4-byte flaggfelt, 4-byte tidsstempel eller kilde-hash, 4-byte kildestørrelse) etterfulgt av et marshalled CPython-kodeobjekt. Optimaliseringsnivået gjenspeiles kun i det kompilerte innholdet - aldri i filens header.

Filendelsen .pyo ble avviklet i Python 3.5 gjennom PEP 488 (september 2015) og genereres ikke lenger av noen nåværende Python-utgivelser. Fra Python 3.5 og utover lagres optimalisert bytekode i __pycache__ med navn som module.cpython-311.opt-1.pyc (for -O) eller .opt-2.pyc (for -OO). Hvis du støter på en .pyo-fil i dag, stammer den fra Python 2 eller Python 3.0-3.4-kode.

.pyo-filer er ikke portable på tvers av CPython-versjoner - «magic number» endres med hver utgivelse. Verktøy som uncompyle6 (Python 2-3.8) og decompyle3 (Python 3.7-3.11) kan dekompilere .pyo-filer tilbake til tilnærmet .py-kildekode, selv om nøyaktigheten varierer etter Python-versjon og kodens kompleksitet.

Sikkerhet og trygghet

RISIKO: MEDIUM

En .pyo-fil kjøres som Python-bytekode med alle rettighetene til et Python-skript - tilgang til filsystem, nettverk og kjøring av underprosesser. Kjør aldri en .pyo fra en upålitelig kilde. Antivirusprogramvare skanner ofte ikke innholdet i .pyo-filer. Skadelige Python-apper distribueres noen ganger kun som bytekode (.pyc/.pyo) for å gjøre omvendt utvikling vanskeligere, selv om dekompilatorer i stor grad kan gjenopprette kildekoden.

Formatdetaljer

i et nøtteskall
FULLT NAVNPython Optimized Bytecode File (legacy)også kjent som Python compiled optimized file, PYO file
UTVIKLERPython Software Foundation (CPython)siden Early CPython (1990s); same as .pyc but with optimizations (assert removal with -O; docstring removal with -OO)
MIME-TYPEapplication/x-python-code
TYPEBinær CPython-bytekode (samme format som .pyc; generert med flagget -O eller -OO)
STANDARDÅpen · royalty-fri

Programmer som åpner PYO-filer

Windows4 apps
Python (run the file) Åpen kildekode Kjør «python file.pyo» fra kommandolinjen (kun Python 2 / 3.0-3.4). På Python 3.5+ må du gi filen nytt navn til .pyc først eller bruke samsvarende Python-versjon.
decompyle3 (decompile to .py) Åpen kildekode pip install decompyle3, deretter «decompyle3 file.pyo > file.py». Fungerer på Python 3.7-3.8 bytekode.
uncompyle6 (decompile Python 2-3.8) Åpen kildekode pip install uncompyle6, deretter «uncompyle6 file.pyo > file.py». Støtter Python 2.4-3.8.
VS Code (view bytecode with extension) Åpen kildekode Gi .pyo nytt navn til .pyc, og bruk deretter utvidelsen «Python Disassembler» eller «Bytecode Viewer» for å inspisere opkoder.
macOS1 app
Python Åpen kildekode Kjør «python file.pyo» med samsvarende Python-versjon. De fleste Linux-distribusjoner inkluderer Python.
Linux1 app
Python Åpen kildekode Kjør «python file.pyo» med samsvarende Python-versjon. De fleste Linux-distribusjoner inkluderer Python.
Web1 app
Decompiler.com (online decompile) Gratis Last opp .pyo-filen; nettstedet dekompilerer Python-bytekode (inkludert .pyo) tilbake til .py i nettleseren.

Tekniske detaljer

dyp spesifikasjon
FormatforholdIdentisk filformat byte-for-byte med `.pyc`; skiller seg kun ved filendelsen og optimalisert innhold
Header-struktur16-byte header: 4-byte versjons-magic + 4-byte flagg + 4-byte kilde-mtime eller hash + 4-byte kildestørrelse
InnholdsformatMarshalled CPython-kodeobjekt (bytekode-instruksjoner, konstant-pool, navn, variabelnavn, nøstede kodeobjekter)
ByterekkefølgeLittle-endian (CPython marshal-serialiseringsformat)
Optimaliseringsnivå -OFjerner `assert`-setninger fra kompilert bytekode
Optimaliseringsnivå -OOFjerner `assert`-setninger og alle docstrings fra kompilert bytekode
AvviklingFilendelsen `.pyo` ble fjernet i Python 3.5 (PEP 488, september 2015); genereres ikke av noen nåværende Python-utgivelse
Moderne ekvivalent`module.cpython-3X.opt-1.pyc` (nivå 1) eller `.opt-2.pyc` (nivå 2) lagret i `__pycache__`
VersjonsportabilitetIkke portabel på tvers av CPython-versjoner; «magic number» i byte 0-3 endres med hver store CPython-utgivelse
IntegritetsvalideringPython 3.7+ (PEP 552): valgfri SipHash av kilde lagret i header-flagg; Python 2 / tidlig 3: kun mtime-sammenligning
Dekompileringsverktøy`uncompyle6` (Python 2-3.8), `decompyle3` (Python 3.7-3.11)
Historisk omfangProdusert kun av Python 2 eller Python 3.0-3.4; forekommer ikke i prosjekter som bruker Python 3.5 eller nyere
UtgittEarly CPython (1990s); same as .pyc but with optimizations (assert removal with -O; docstring removal with -OO)
Siste versjonDEPRECATED in Python 3.5 (PEP 488, September 2015) - .pyo extension no longer generated; replaced by .cpython-3X.opt-1.pyc / .opt-2.pyc naming
Åpen standardJa · royalty-fri
Spesifikasjonpeps.python.org

PYO-konverteringer

Spørsmål og svar fra fellesskapet

spurt av brukere
Still et raskt spørsmål
Få hjelp fra folk som jobber med PYO-filer. Vær spesifikk - inkluder systemet ditt og programvareversjon.
Ingen konto nødvendig · svar vanligvis innen en dag

Ingen spørsmål ennå - vær den første til å spørre om PYO-filer.

Ofte stilte spørsmål

Hva er en .pyo-fil?
En utdatert Python-optimalisert bytekode-fil - den kompilerte formen av et .py-skript opprettet med Pythons optimaliseringsflagg -O eller -OO. Identisk binærformat som .pyc; generert av Python 2 og Python 3.0-3.4. Python 3.5+ oppretter ikke lenger .pyo-filer.
Hvordan åpner jeg en .pyo-fil?
Du åpner den ikke direkte - Python kjører den automatisk. For å lese innholdet, bruk decompyle3 eller uncompyle6 for å dekompilere den tilbake til .py-kildekode, eller gi den nytt navn til .pyc og bruk en bytekode-disassembler.
Kan jeg slette .pyo-filer?
Ja - .pyo-filer er bytekode-cacher. Python gjenoppretter dem ved behov. Sletting av dem ødelegger ikke en fungerende Python-installasjon eller app (forutsatt at .py-kildekodene er tilstede).
Hva er forskjellen mellom .pyo og .pyc?
.pyo ble kompilert med -O (asserts fjernet) eller -OO (docstrings også fjernet); .pyc ble kompilert uten optimalisering. Det binære formatet er identisk. Python 3.5+ slo dem sammen til .opt-1.pyc / .opt-2.pyc.
Hvorfor oppretter ikke Python 3.5+ .pyo-filer?
PEP 488 (2015) eliminerte .pyo fordi det var forvirrende å ha to filendelser for samme binærformat. Optimaliseringsnivået er nå kodet i .pyc-filnavnet (.opt-1.pyc, .opt-2.pyc).
Hvordan dekompilerer jeg en .pyo for å få Python-kildekoden?
Bruk decompyle3 (Python 3.7-3.8) eller uncompyle6 (Python 2-3.8): «pip install decompyle3 && decompyle3 file.pyo». Eller last opp til decompiler.com for et nettbasert alternativ. Resultatene kan være ufullstendige, spesielt for -OO-kompilerte filer som mangler docstrings.

Referanser

1PEP 488 - Elimination of PYO filespeps.python.org
2Python Docs - compileall moduledocs.python.org

Utforsk videre

på tvers av databasen

Populære filendelser denne uken

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.PARTPartial Download File
4.BINCD/DVD Disc Image (BIN/CUE)
5.EXEWindows Executable (Portable Executable)
6.RPMSGRestricted Permission Message
7.MDMarkdown Document
8.DATProgram Data File (generic)
9.NOMEDIAAndroid No-Media Marker File
10.TXTPlain Text File

Relaterte filendelser

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

Gratis filverktøy

En filidentifikator og bildekonvertering i nettleseren - alt kjører på din enhet.

Åpne verktøykassen

Bla i filendelser A-Å