如何编译单个python脚本(不是exe)?



我知道在这个话题中有很多争论。 我做了一些研究,我调查了这里的一些问题,但没有一个是完全的。

我正在使用Python 3.7在Django中开发我的应用程序,我不希望将我的应用程序转换为单个.exe文件,实际上这样做是不合理的,如果可能的话。

但是,我见过一些用javascript开发的应用程序,它们使用bytenode将代码编译为.jsc

蟒蛇有这样的事情吗?我知道有 .pyc,但据我所知,这些只是运行时编译的文件,实际上不是字节码预编译脚本。

我想保护某些可能危及应用程序安全性的文件上的源代码。毕竟,部署我的应用程序意味着部署一个成熟的 python 安装,打开一个 Web 端口和一个在其上运行的应用程序。

你怎么看,有没有办法做到这一点,对你来说有意义吗?

谢谢

预编译(.pyc(文件是您要查找的。它们包含预先优化的字节码,即使原始.py文件不存在,也可以由解释器运行。

您可以使用python -m py_compile <filename>直接构建.pyc文件。还有一种更优化的.pyo格式,通过删除标识符名称和文档字符串来进一步减小文件大小。您可以使用-OO将其打开。

请注意,可能仍然可以通过足够的努力来反编译生成的字节码,因此不要将其用作安全措施。

最新更新