如何把pyc反编译成py_exe文件反编译源码工具

如何把pyc反编译成py_exe文件反编译源码工具将pyc文件反编译成python源代码

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

今天手残了,本来想着删掉项目里面所有的pyc文件,不知道脑袋想着什么就变成了find . -type f -name "*.py" -exec rm -f {} \;
结果你懂得,我这两天写的代码还没提交到git!整个人瞬时懵逼……
后来看着文件夹里面还剩下的pyc文件我灵机一动,可以试试从pyc文件反编译回去,经过高人指点,有了下面这段

使用uncompyle

项目地址:https://github.com/wibiti/uncompyle2

注: 按照官方文档的说法应该是只支持python 2.7,其他版本我也没有测试

安装

最方便的就是使用pip安装
pip install uncompyle

使用方法

我使用pip在mac os上安装好后的可执行文件名叫uncompyle6很奇葩有没有
uncompyle6 --help 查看帮助
uncompyle6 models.pyc > models.py 将models.pyc反编译成py文件
uncompile -o . *.pyc 将当前文件夹中所有的pyc文件反编译成后缀名为.pyc_dis的源文件

总结

  • 反编译后的效果可以说很理想,如果你的代码格式符合PEP8规范的要求,那就基本和源来的文件一样,不过各种注释就没有了(不能要求太高是不是)
  • 最后改的代码还没有运行(没有生成pyc)的,就真的丢了,不过不多,再写一遍吧!
  • 问题是解决了,不过最后要反思一下,使用find + rm 删除文件的时候一定要小心,按确认之前一定要再三检查
  • 最后贴上Stack Overflow上面的一个回答以及下面的评论的截图
    stack overflow
    我想说 +1 and another :)

参考 http://stackoverflow.com/questions/48211/free-python-decompiler-that-is-not-an-online-service/7474393#

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/172363.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 光流法小结[通俗易懂]

    光流法小结[通俗易懂]1.定义空间运动物体在观察成像平面上的像素运动的瞬时速度,是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。也就是说,由空间域到图像平面的投影。而通俗来讲,把图像中的每一个点的瞬时速度和方向找出来就是光流。2.光流有什么用通过光流判断物体距离我们的远近。一般而言,远景的物体相对来说光流较小,而近景物体

  • 命令行连接mongodb_yum安装mongodb

    命令行连接mongodb_yum安装mongodb情况:1.使用xmanage能远程链接centos

  • idea2022.01.13激活码获取-激活码分享2022.03.10

    (idea2022.01.13激活码获取)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html1M2OME2TZY-eyJsa…

  • VLAN概念和作用的自我总结

    VLAN概念和作用的自我总结什么是VLAN:   一个VLAN是跨越多个物理LAN网段的逻辑广播域,人们设计VLAN来为工作站提供独立的广播域,这些工作站是依据其功能、项目组或应用而不顾其用户的物理位置而逻辑分段的。一个VLAN=一个广播域=逻辑网段VLAN的优点和安装特性:VLAN的优点:   ·安全性。一个VLAN里的广播帧不会扩散到其他VLAN中。   ·网络分段。将物理网段按

  • 解决 SVN Skipped ‘xxx’ — Node remains in conflict

    解决 SVN Skipped ‘xxx’ — Node remains in conflict

    2021年10月19日
  • dm348_再论不平等

    dm348_再论不平等UBL前两篇文章中我们有提到过了。参看:DM368开发–文件烧写参看:DM368开发–Bootloader开发简单点来说,UBL主要功能是实现将U-boot代码拷贝到DDR2内存中,建立运行环境并引导U-boot。但是现在我有个问题,我想让DM368开发板运行在432Mhz,目前它的状态是AR,297Mhz、DDR为243Mhz。具体操作为,修改/ps

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号