bytecode is a Python module to generate and modify bytecode.
- bytecode project homepage at GitHub (code, bugs)
- bytecode documentation
- Download latest bytecode release at the Python Cheeseshop (PyPI)
Install bytecode: python3 -m pip install bytecode. It requires Python 3.8
or newer. The latest release that supports Python 3.7 and 3.6 is 0.13.0.
The latest release that supports Python 3.5 is 0.12.0. For Python 2.7 support,
have a look at dead-bytecode
instead.
Example executing print('Hello World!'):
from bytecode import Instr, Bytecode
bytecode = Bytecode([Instr("LOAD_GLOBAL", (True, 'print')),
Instr("LOAD_CONST", 'Hello World!'),
Instr("CALL", 1),
Instr("POP_TOP"),
Instr("LOAD_CONST", None),
Instr("RETURN_VALUE")])
code = bytecode.to_code()
exec(code)