提问者:小点点

可移植python脚本:是否可以在脚本中包含第三方库?


我有一个Python脚本,它使用开源第三方库进行地理处理(OGR和Shapely)。我的计划是在计算机上执行此脚本,而不必安装所需的库。

我知道有py2exe等工具可用于此目的。然而,编译一个可执行文件并不是我的第一选择,因为我注意到这样的文件可能会变得相当大。此外,我想在另一个脚本中使用代码。因此,我想创建一个可移植的python脚本,它已经包含了执行所需的第三方方法。

为了避免安装第三方库,是否可以在Python脚本中包含第三方方法?如果没有,除了编译可执行文件之外,我还能做什么呢?我在Windows操作系统上工作。


共2个答案

匿名用户

您可以使用pip导出您的库,并将它们嵌入到您的应用程序中。

pip控制盘需要安装控制盘包,该包提供了它使用的“bdist_控制盘”setuptools扩展。

为您的需求及其对本地目录的所有依赖建立轮子:

pip install wheel
pip freeze > requirements.txt

在这一点上检查需求。txt,清理它,然后您可以在本地文件夹中下载轮子:

pip wheel --wheel-dir=/local/wheels -r requirements.txt

然后使用本地控制盘目录(而不是PyPI)安装这些需求:

pip install --no-index --find-links=/local/wheels -r requirements.txt

然后,尽管您需要pip,尽管它附带了最新版本的python。

看看这个:https://pip.readthedocs.io/en/latest/user_guide/#requirements-files

匿名用户

如果您的第三方库没有任何依赖项,您可以将源文件(.py)放入项目文件夹中,并使用导入将其用作包,否则它具有依赖项您的项目大小会增长得更好为脚本创建exe。