File Format Docs
NO

PYC File Format- Python Compiled File

Oppdatert

Hva er en PYC-fil?

En PYC-fil er en kompilert utdatafil generert fra kildekoden skrevet i programmeringsspråket Python. Når PY-filen kjøres med Python-tolk, konverteres den til bytekode for kjøring. Samtidig blir den kompilerte bytekoden også lagret som .pyc-fil for å gjenbruke fra hurtigbufferen på et senere tidspunkt hvis det er aktuelt.

Strukturen til PYC-filformatet

PYC-filer er i bytekode og deres filformatspesifikasjoner er ikke tilgjengelig offentlig. Undersøkelser fra noen kilder viser imidlertid at strukturen til en PYC-fil består av:

  • Et fire-byte magisk tall - Ganske enkelt to byte som endres med hver endring av rangeringskoden, og deretter to byte på 0d0a.
  • A fire-byte modification timestamp - Unix modifikasjonstidsstempel for kildefilen som genererte .pyc, slik at den kan rekompileres hvis kilden endres.
  • A marshalled code object - utdata fra marshal.dump av kodeobjektet som er et resultat av kompilering av kildefilen.

Vanlige spørsmål

  1. Hvordan genereres en PYC-fil? En PYC-fil opprettes når Python-kildekoden kompileres ved hjelp av Python-tolken. Den kompilerte koden lagres deretter i PYC-filen.

  2. Er PYC raskere enn py? PYC-filer lagres etter at python-kildekoden er kompilert. Siden disse allerede er tolket, er disse filene raskere enn .py-filer.

  3. Hva er forskjellen mellom py- og pyc-fil? PY-filer inneholder Python-kildekodefil for et program, mens .pyc-filer inneholder tolket bytekode for en applikasjon.

  4. Er PYC en binær fil? Ja, PYC-filen er en binær fil som inneholder et 4-byte magisk tall, et 4-byte modifikasjonstidsstempel og et rangert kodeobjekt.

  5. Kan vi konvertere .pyc til .py? Ja, det er mulig å konvertere pyc-filer til py. Dekompilatorer som Decompyle++ kan brukes til å oversette kompilert Python-bytekode tilbake til gyldig og lesbar Python-kildekode.

Referanser