如何从命令行反汇编Python脚本,是否有类似gcc -S的功能参数?
Python 实现类似gcc -S输出可读字节码的命令行方案
CPython 没有内置和gcc -S完全对应的独立命令行参数,但可以直接通过Python标准库自带的dis模块的命令行调用模式,实现完全一致的需求。
可用命令行写法
要直接输出指定脚本的可读字节码到文件,直接运行以下命令即可:
python3 -m dis my_script.py > 输出文件名.txt
如果不需要保存到文件,仅在终端查看字节码,直接省略重定向部分即可:
python3 -m dis my_script.py
效果说明
- 上述命令的输出结果和手动写代码导入
dis模块反编译的结果完全一致,会包含每一条字节码指令的偏移量、指令名、参数等完整信息。 - 字节码内容和运行命令使用的CPython版本强相关,不同Python大版本的字节码指令集存在差异,符合CPython的字节码设计规则。
内容的提问来源于stack exchange,提问作者0x263A
相关产品推荐
相关产品推荐

