Python cross-version byte-code disassembler and marshal routines
Cross-Python bytecode Disassembler and Marshal routines
dis module allows you to disassemble bytecode from the same
version of Python that you are running on. But what about bytecode from
That’s what this package is for. It can “marshal load” Python bytecodes from different versions of Python. The command-line routine pydisasm will show disassembly output using Python 3.5 disassembly conventions.
It accepts bytecodes from Python version 1.5 to 3.6 or so. The code requires Python 2.6 or later and has been tested on Python running versions 2.6, pypy-2.6.1 2.7, pypy-5.0.1, pypy-5.3.1, 3.2, 3.3, 3.4, 3.5 and 3.6.
This uses setup.py, so it follows the standard Python routine:
pip install -r requirements.txt pip install -r requirements-dev.txt python setup.py install # may need sudo # or if you have pyenv: python setup.py develop
A GNU makefile is also provided so
make install (possibly as root or
sudo) will do the steps above.
A GNU makefile has been added to smooth over setting running the right command, and running tests from fastest to slowest.
If you have remake installed, you can see the list of all tasks
including tests via
for usage help.
xdis also provides some support as a drop in replacement for the
the Python library dis
module. This is may be desirable when you want to use the improved API
from Python 3.4 or later from an earlier Python version.
>>> # works in Python 2 and 3 >>> import xdis.std as dis >>> [x.opname for x in dis.Bytecode('a = 10')] ['LOAD_CONST', 'STORE_NAME', 'LOAD_CONST', 'RETURN_VALUE']
There may some small differences in output produced for formatted
disassembly or how we show compiler flags. We expect you’ll
xdis output more informative though.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|File Name & Checksum SHA256 Checksum Help||Version||File Type||Upload Date|
|xdis-3.4.0-py2.4.egg (141.1 kB) Copy SHA256 Checksum SHA256||2.4||Egg||Jun 24, 2017|
|xdis-3.4.0-py2.5.egg (140.4 kB) Copy SHA256 Checksum SHA256||2.5||Egg||Jun 24, 2017|
|xdis-3.4.0-py2.6.egg (139.9 kB) Copy SHA256 Checksum SHA256||2.6||Egg||Jun 25, 2017|
|xdis-3.4.0-py2.py3-none-any.whl (63.4 kB) Copy SHA256 Checksum SHA256||3.5||Wheel||Jun 24, 2017|
|xdis-3.4.0-py3.3.egg (131.9 kB) Copy SHA256 Checksum SHA256||3.3||Egg||Jun 24, 2017|
|xdis-3.4.0-py3.4.egg (131.3 kB) Copy SHA256 Checksum SHA256||3.4||Egg||Jun 24, 2017|
|xdis-3.4.0.tar.gz (142.3 kB) Copy SHA256 Checksum SHA256||–||Source||Jun 24, 2017|