Volver a montar Python código de bytes al código original?
-
22-09-2019 - |
Pregunta
Esto podría ser una pregunta tonta, pero, dada la salida de, por ejemplo ..
>>> from dis import dis
>>> def myfunc(x):
... print x ** 2
...
>>> dis(myfunc)
2 0 LOAD_FAST 0 (x)
3 LOAD_CONST 1 (2)
6 BINARY_POWER
7 PRINT_ITEM
8 PRINT_NEWLINE
9 LOAD_CONST 0 (None)
12 RETURN_VALUE
.. o un archivo .pyc
- ¿es posible volver a montar esto en una pieza válida de código fuente de Python? Es decir donde reassemble(dis(myfunc)) == "def reassembled_function(x):\n print x ** 2"
Por ninguna razón práctica en particular, tengo curiosidad si esto es posible, o se ha intentado ..
Relacionados
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow