将Python库打包为一个文件

2 投票
1 回答
2486 浏览
提问于 2025-04-18 05:06

我想把一个纯Python的库打包成一个源代码的Python脚本。(不是exe文件、应用程序之类的,我需要的就是lib.py这个文件)这可能吗?有什么工具可以做到这一点?

1 个回答

2

最好的办法是把你所有的Python文件打包成一个zip文件:https://blogs.gnome.org/jamesh/2012/05/21/python-zip-files/

如果你真的想这样做,当然可以把所有东西(包括zip文件)打包成一个.py文件,只需要写一个自定义的导入钩子,把经过base64编码的zip文件作为字符串存储在你的Python源代码中,稍微做点魔法,结果就是一个单独的Python程序。

另外,你也可以重构你的所有依赖,把它们作为类包含在你的源代码中,但这样做有什么意义呢?

最后,没有简单的方法可以包含编译过的依赖文件,也就是那些.so / .dylib / .dll文件。

我觉得没有工具能完全满足你的需求,但我认为pyinstaller和py2exe可以做到相当接近,比如你可以查看http://www.py2exe.org/old/,寻找library.zip

撰写回答