Python拆卸模块
示例
要反汇编Python模块,首先必须将其转换为.pyc文件(由Python编译)。为此,运行
python -m compileall <file>.py
然后在解释器中运行
import dis import marshal with open("<file>.pyc", "rb") as code_f: code_f.read(8) #幻数和修改时间 code = marshal.load(code_f) #返回可以反汇编的代码对象 dis.dis(code) #输出反汇编
这将编译一个Python模块并使用来输出字节码指令dis。该模块从不导入,因此可以安全地使用不受信任的代码。