如何从外部版本中删除代码



我想发布我的代码子集供外部使用。只有某些功能或方法应该被外部客户使用(甚至看到)。有没有办法在Python中做到这一点?

我想过将我要删除的代码包装在if __debug__:中,然后创建一个带有 py_compilecompileall的 .pyc 文件,然后使用 uncompyle2 从新字节码重新创建源代码。__debug__只是创建一个if False条件,该条件被"编译器"剥离。我不知道如何将这些"编译器模块"与-O选项一起使用。

我不知道是否有任何标准工具可以做到这一点,但是用适当编码的注释标记这些部分,然后通过脚本运行所有文件应该不会太难,该脚本输出一组新文件,省略这些注释之间的行。

最新更新