文件头

如果pyc是python3.9以上的就需要用pycdc

python3.9一下的用unocompyle6

不同版本的python有不同的:magic number

可以用指定版本的python执行代码来获取:

1
2
3
4
5
6
7
8
9
#需要的时候需要切换python的版本:设置->python解释器
import importlib.util

# 获取当前 Python 版本的 magic number,并输出为十六进制
#big 是大端序 little 是小端序
magic_number = int.from_bytes(importlib.util.MAGIC_NUMBER, byteorder='big')
hex_magic_number = hex(magic_number)
print(hex_magic_number)

这里是3.6的:

把文件头修改如下,第一行。

image-20231017223212202

python 3.11

image-20231129212613591