
简介一个文件, 它在被运行之际, 会于同目录之下编译出一个pyc格式的文件, 这么做是为了往后能够急速加载, 这个文件, 它能够如同py文件那般加以使用, 然而, 要读取它以及修改这个文件却是不行的有一种工具, 它是能够把pyc文件反向编译成为py文件的, 不过, 有可能会出现部分文件这种反向编译操作是成不了的。被支持的版本有, 一点零, 一点一, 一点三, 一点四, 一点五, 一点六, 二点零二点一, 二点二, 二点三, 二点四, 二点五, 二点六, 二点七, 三点零, 三点一, 三点二, 三点三, 三点四, 三点五, 三点六, 三点七, 三点八, 三点九, 三点一零, 三点一一, 三点一二。这个工具能够免费去使用, 它限制在30分钟之内进行1次反编译 , 是以ip为单位要是存在更高的使用频次方面的需求, 那么就能够开通本站的会员, 在开通之后限制就会变成30秒内进行30次反编译 , 是以用户为单位。使用说明1、选择文件上传pyc文件。2、等待反编译结果如果成功会在文本框中显示。3、要是源码里存有中文, 会以url编码的样子呈现, 能够试着点击 “UTF - 8解码” 按钮, 或者点击 “GBK解码” 按钮, 去解码源码当中的中文部分。字节码经历程序编译之后所形成的中间表示形态便是字节码。编译这个过程是由解释器里面的编译器自动达成的字节码一般情况下会被存放于.pyc文件之中, 此为一种已经编译好了的文件内容, 能够被虚拟机也就是PVM直接进行执行操作。这种提前编译的方式能够让程序启动的速度得到提升。把编译之后的字节码转变回接近原始源代码的流程成为反编译, 反编译所获得的源代码也许并非会全然的等同于原始源代码, 例如变量名以及某些结构, 不过在逻辑上与原始代码是等效的。下面是一些常见的 字节码指令给栈加载常量, 像数字, 字符串, 元组之类的。从局部变量空间那儿加载一个变量到栈上去。把栈顶的值存到局部变量空间里。从全局变量空间拿来一个变量加载到栈上。将栈顶的值存进全局变量空间。加载一个对象的属性。设置一个对象的属性。调用一个函数, 其参数数量按操作数来定。从栈上的代码对象弄出一个函数对象。由栈上的元素造出一个列表。创建一个字典。利用栈上的元素去创建一个元组。把一个像列表或者元组那样的序列进行解包, 放到栈上。开展就地加法操作, 也就是a b。从函数那儿返回一个值。把栈顶的元素给弹出。对栈顶的元素进行复制。将栈顶的两个元素相互交换。把栈顶的三个元素向上旋转一回。进行诸如等于、不等于、小于之类的比较操作。朝着字节码里的另外一个地址往前跳转。要是栈顶为真那就跳转, 不然就把栈顶元素弹出。若栈顶呈现为假的状态, 那么便进行跳转操作, 不然的话, 就将栈顶元素弹出。若栈顶呈现为真的状态, 那么就弹出栈顶元素且进行跳转。若栈顶呈现为假的状态, 那么就弹出栈顶元素且进行跳转。