decompyle3
decompyle3 is a free, open-source Python decompiler that turns Python bytecode into equivalent Python source code.
What decompyle3 is
decompyle3 is a free, open-source Python decompiler that turns Python bytecode into equivalent Python source code. It is designed as a native Python cross-version and fragment decompiler, accepting bytecode from Python 3.7 onward; the project reports testing with Python 3.7 and 3.8 bytecode. Installation is documented through PyPI with `pip install decompyle3` or from source. After installation, its command-line interface can process compiled `.pyc` and `.pyo` files, with a documented `--syntax-verify` option. The project is licensed under GPL-3.0 and focuses on bytecode rather than native-code decompilation. Its stated scope excludes obfuscated code, Cython, MicroPython, and Py2EXE executables. The README also warns of numerous decompilation bugs and slower processing for some long expression or statement lists. Regular paid support is not provided, and issue reports are public.
Good
- Free and open source
- Handles Python bytecode from 3.7 onward
- Command-line `.pyc` and `.pyo` processing
- Offers fragment decompilation
- Includes syntax verification option
Watch out
- Does not handle obfuscated code directly
- Excludes Cython, MicroPython, and Py2EXE
- Decompilation has numerous bugs
- Issue reports are public
Who it suits
It suits developers or analysts who need to inspect Python 3.7-or-newer bytecode or decompile fragments. It is less suitable for excluded formats or confidential issue reports.
Verdict
decompyle3 provides a focused, free route from supported Python bytecode to source-like code. Its exclusions, bug warnings, and public issue process should shape expectations.
The facts
Each one read from decompyle3's own pages, with the date it was checked.
What it does
- Accuracy limits
- The README cautions that decompilation has numerous bugs and that some long lists of expressions or statements run slowly.checked 5 Oct 2026
- Bytecode versions
- The README says it accepts Python bytecode from version 3.7 onward, and that bytecode from Python 3.7 and 3.8 has been tested.checked 5 Oct 2026
- Command line
- The README shows running `decompyle3` on compiled `.pyc` or `.pyo` files and documents a `--syntax-verify` option.checked 5 Oct 2026
- Fragment decompiler
- The project describes itself as a native Python cross-version decompiler and fragment decompiler.checked 5 Oct 2026
- Installation
- The README documents installation from PyPI with `pip install decompyle3` or from source.checked 5 Oct 2026
- Issue confidentiality
- The bug reporting guidance says issue reports and the code in them are public and have no confidentiality.checked 5 Oct 2026
- License
- The GitHub repository identifies its license as GPL-3.0.checked 5 Oct 2026
- Purpose
- decompyle3 translates Python bytecode back into equivalent Python source code.checked 5 Oct 2026
- Restrictions
- The README says the project does not handle obfuscated code, Cython, MicroPython, or Py2EXE executables directly.checked 5 Oct 2026
- Support
- The bug reporting guidance says fixes may take months or years and that the maintainer does not provide paid support as a regular service.checked 5 Oct 2026
Alternatives to decompyle3
- 1

Binary Ninja
Free planWebAPILinuxmacOS7.8$199 one-time - 2
Frida
Free planOpen sourceAndroidiOSAPILinux7.7Free plan - 3

rev.ng
Free planOpen sourceWebAPILinuxmacOS7.7Free plan - 4

JEB
Free planAPILinuxmacOSSelf-hosted7.6From $1,200 a year - 5
Ghidra
Free planOpen sourceAPIExtensionLinuxmacOS7.3Free plan - 6

IDA Pro
Free planLinuxmacOSWindows7.0From $1,099 a year
