The dis module
This is the Python disassembler. It converts bytecodes to a format that is slightly more appropriate for human consumption.
You can run the disassembler from the command line. It compiles the given script, and prints the disassembled byte codes to the terminal.
$ dis.py hello.py
0 SET_LINENO 0
3 SET_LINENO 1
6 LOAD_CONST 0 ('hello again, and welcome to the show')
9 PRINT_ITEM
10 PRINT_NEWLINE
11 LOAD_CONST 1 (None)
14 RETURN_VALUE
You can also use dis as a module. The dis function takes a class, method, function, or code object as its single argument.
Example: Using the dis
module
# File: dis-example-1.py import dis def procedure(): print 'hello' dis.dis(procedure)
0 SET_LINENO 3
3 SET_LINENO 4
6 LOAD_CONST 1 ('hello')
9 PRINT_ITEM
10 PRINT_NEWLINE
11 LOAD_CONST 0 (None)
14 RETURN_VALUE
