压缩 Python 代码,但不要改变换行方式,有这样的工具吗?
我需要一个能够最小化 python 代码文件,但不改变我的换行方式的代码压缩器。(为了便于报错时查错,所以行号不想改变)
具体点的说话,希望工具能够:
删除所有注释,以及末尾空格
替换所有开头的空格缩进为 tab
最小化所有函数内的变量名,但不要改变任何全局对象名
python-minifier.com/看看这个是否满足
不改变行号这个可能现有的工具都不支持吧?
python 生态有类似 sourcemap 的工具么?
py 这种逆天的以缩进控制结构的东西 还能压缩吗 =_=!
python 代码又不是 2C 的,此举意义何在?
不改变行号的话 winrar 可以做到 就是压缩完的不能被 cpython 直接执行
二进制可以用 upx ,可以压掉 3/4
zipimport
你这样,要不直接提供 pyc 吧
有这个必要吗
把项目代码压缩成 zip , 写一个启动器解压代码并执行。
研究一下, 不把文件实际解压到磁盘上,只把代码读到内存中也是可以的
github.com/ClericPy/morebuiltins/blob/master/morebuiltins/utils.py#L411以前做过类似的 code_inline ,保留行号应该也留个差不多,毕竟只是压缩了一下。报错查错自己写个 format error 也可以找到是哪行哪句报哪个错 github.com/ClericPy/morebuiltins/blob/master/morebuiltins/utils.py#L782
既然都用到编译器了那不如编译的时候把缩紧改为大括号,然后把这个编译后的代码运行在一个支持大括号的 python 解释器上,完美至于这个支持大括号的 python 解释器,我觉得可以考虑给 cpython 写个插件之类的
Python 支持从 zip 压缩包里执行代码,可以看下:1. peps.python.org/pep-0273/2. peps.python.org/pep-0441/
另外提一嘴,一般文本文件压缩率在 10x 左右,不管是 gzip 还是 zip 都差不多。
zipimport + pyc?
不如 pyc 交付?
编译成二进制交付?比如用 nuitka
代码 -》 AST -》 代码
有意义吗?有作用吗?哪怕你只给 pyc ,能运行就能 hook ,能 hook 就能 export 。打包 pyd 吧,OD 一样能看,只是繁琐而已。
七、八年前写过一篇《用GDB调试程序》,于是,从那以后,很多朋友在MSN上以及给我发邮件询问我关于GDB的问题,一直到今天,还有人在问GDB的相关问题。这么多年来,有一些问题是…
需求大概就类似 Bilibili 的云放映厅,个人不喜欢通过腾讯视频等会议软件,感觉录屏、录声音质量下降显著,像在看枪版似的。 需要同步暂停/播放,不需要弹幕/聊天 想要支持…
今天带着学习的目的花了半天时间看了一下 python 广泛使用的任务队列 celery ,看完感觉不少地方挺奇怪。我们部门任务因为削峰一直用的是自己写的任务队列,所以说实话其实…