我个人认为最好分发.py文件,因为这些文件将由最终用户自己的python编译,这可能会更加修补。
为商业的闭源python模块分发.pyc文件与.py文件的优缺点是什么?
换句话说,是否有任何令人信服的理由来分发.pyc文件?
编辑:特别是,如果.py / .pyc附带了一个针对特定版本的Python编译的DLL / SO模块。
答案 0 :(得分:1)
您应该知道有一些开源和专有的反编译器可以将Python字节代码转换为Python源代码。一个这样的例子是Mysterie's uncompyle2
此外, .pyc
文件不是跨版本安全的,因此在.pyc
上分发.py
比使用{{1}}更有麻烦。
答案 1 :(得分:1)
如果您的专有位在二进制DLL或SO中,那么将接口层设为.pyc
(而不是.py
)没有实际价值。您可以将它们全部放在一起或将其作为未编译的python文件分发。我不知道分发编译的python文件的任何理由。在许多情况下,构建环境会将它们视为陈旧副产品并将其清除,以便您的程序可能会消失。