首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >对非程序员隐藏Python代码

对非程序员隐藏Python代码
EN

Stack Overflow用户
提问于 2014-06-28 08:05:10
回答 5查看 863关注 0票数 1

我如何对客户混淆/隐藏Python代码,这样他就不能以他喜欢的方式更改源代码了?

我知道没有有效的方法隐藏Python代码,因此无法读取它。我只想要一个简单的保护,一个不知道自己在做什么的人不能用文本编辑器打开源文件,不费任何力气就可以轻松地修改或理解所有的东西。因为我的代码写得非常容易理解,所以我想首先隐藏我使用的主要原则。

如果有人真的想知道我做了什么,他会的。我知道这个。

那么,您是否有一种常见的方法来对python代码进行简单的保护?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-06-28 08:08:12

只需使用this answer中的方法将其编译为字节码即可。

代码语言:javascript
运行
复制
import py_compile
py_compile.compile("file.py")

可以分发pyc文件来代替py文件。

票数 7
EN

Stack Overflow用户

发布于 2014-06-28 08:07:59

您可以尝试使用类似于pyinstaller或py2exe的方法将它们转换为可执行文件,尽管这样会增加发行版的大小。

票数 1
EN

Stack Overflow用户

发布于 2014-06-28 08:34:08

您可以将所有python文件放入zip文件,并在启动应用程序之前或期间将zip文件放在python路径上。如果您将zip文件命名为.zip以外的其他文件,将防止技术上毫无头绪的人找到源代码。

要启动应用程序,请解压缩主模块,并让它在导入任何压缩源代码之前更新python路径本身。

在您的主要模块中:

代码语言:javascript
运行
复制
__import__('sys').path.append('./source.dat')
import mymodule
...

if __name__ == '__main__':
    ....

您将希望在zip存档中包括.pyo和.pyc文件,否则导入速度将很慢。详情请参见https://docs.python.org/2/library/zipimport.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24464913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档