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
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.
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.
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.
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.
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.