Explorando y descompilando el bytecode de python [cerrado]
Digamos que tengo:
>>> def test(a):
>>> print a
Ahora, quiero explorar cómo se ve la prueba en su forma compilada.
>>> test.func_code.co_code
'|\x00\x00GHd\x00\x00S'
Puedo obtener la forma desmontada usando eldis módulo:
>>> import dis
>>> dis.dis(test)
2 0 LOAD_FAST 0 (a)
3 PRINT_ITEM
4 PRINT_NEWLINE
5 LOAD_CONST 0 (None)
8 RETURN_VALUE
¿Existe un decompilador de código abierto y mantenido que podría usar para convertir el código de bytes nuevamente en un código de Python legible?
actualización: gracias por sugerir descompilar, pero está desactualizado (python2.3) y ya nadie lo mantiene. ¿Hay algo para python2.5 o posterior?