我有一个简单的脚本,它依赖于dnspython来解析区域文件。我想将此脚本作为单个 .py 分发,用户只要安装了 2.6/2.7 就可以运行该脚本。我不想让用户在站点范围内安装依赖项,因为可能与现有的包/版本发生冲突,我也不希望他们与 virtualenv 混在一起。我想知道是否有办法在脚本(gzip/base64)中嵌入像 dnspython 这样的包,并让该脚本在运行时访问该包。也许将其解压缩到 /tmp 中的目录并将其添加到 sys.path?我不关心启动开销,我只想要一个包含所有依赖项的单个 .py,我可以分发它。
此外,没有 C 依赖项可以构建,只有纯 python 包。
编辑:脚本不必是 .py。只要它是一个单一的可执行文件。