将 Python 字节码重新组装为原始代码?
这可能是一个愚蠢的问题,但是,给定输出,例如..
>>> 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
..或 .pyc
文件 - 是否可以将其重新组装成一段有效的 Python 源代码?即其中 reassemble(dis(myfunc)) == "def reassembled_function(x):\n print x ** 2"
不是出于任何特定的实际原因,我只是好奇这是否可能,或已尝试过..
相关
This might be a silly question, but, given the output of, say..
>>> 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
..or a .pyc
file - is it possible to reassembling this into a valid piece of Python source code? I.e where reassemble(dis(myfunc)) == "def reassembled_function(x):\n print x ** 2"
Not for any particular practical reason, I'm just curious if this is possible, or has been attempted..
Related
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
http://sourceforge.net/projects/decompyle/
http://sourceforge.net/projects/decompyle/