Python因为开发效率而闻名计算机世界,但是作为解释器语言,代码安全长期广受诟病。设想一种场景,你需要将Python文件发给客户,但是不希望公开源码,这个时候就需要对Python文件进行加密了。接下来就介绍两种常用的Python文件加密技术。

1、编译和反编译pyc文件

在Pycharm中编写示例代码test.py文件,打印0到4的数字:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

示例代码

然后在终端运行如下命令:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

运行Python编译命令

除了指定文件编译外,也可以指定文件夹进行编译。执行完上面的命令后,在test.py的同级目录下会出现一个__pycache__文件夹,里面有一个test.cpython-37.pyc文件,

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

__pycache__文件夹

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

pyc文件出现了

然后使用Pycharm打开test.cpython-37.pyc,然后用记事本打开:

pyc乱码

但是执行没有问题,可以直接运行:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

但是!!!

使用这种方式得到的pyc文件是可以被反编译的,首先安装uncompyle6包,

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后在Pycharm中新建一个Python文件,编辑如下代码:

运行后,生成一个new.py文件:

对比下test.py可以看到,基本上还原了。

2、编译pyd文件

还是在Pycharm中编辑test.py文件:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

先安装第三方包cython和C++生成工具(cython是C扩展, 请自行安装Microsoft Visual C++ 14.0及以上,

请进入Microsoft C++生成工具进行下载):

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后增加一个main.py文件用于编译test.py:

在终端上运行命令:

即可得到对应的c文件和pyd文件,执行速度会比编译前的原始py文件快很多。

以上就是“Python文件如何加密?”的全部内容,希望对你有所帮助。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、Python必备开发工具

img

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

五、Python练习题

检查学习结果。

img

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

img

最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐