我已经开始使用 Python 来自动化我在工作中的重复性任务,并且经常需要将第三方模块的引用集成到我的脚本中。如何将这些文件直接包含在我的脚本中?我知道有多种方法可以在我的 python 安装文件夹 (C:\Python27) 中集中安装这些库。许多第三方模块提供了一个可以自动执行此操作的 EXE 安装程序。但是,我担心这将如何影响我的脚本的可移植性。例如,如果我将我的脚本发送给其他人,我不想也必须向他们发送他们需要下载和安装的所有单独模块的列表。
更新
我对 Visual Studio 中的 C# 项目有更多的经验。在 Visual Studio 项目中,如果我想使用 3rd 方 DLL,我只需将该 DLL 包含在我的解决方案中的 Lib 文件夹中,并从我的项目中引用该 DLL。我不介意将该库加载到 GAC 中,在我看来,这就像安装 python 包的 .NET 等价物。
有没有什么办法可以在我的项目文件夹中包含第 3 方库并使用相对路径引用它们?假设我有以下文件结构。
\My Script.py
\lib\3rdPartyLib\3rdPartyLib.py
我可以从 MyScript.py 导入 3rdPartyLib 吗?
import 3rdPartyLib from \lib\3rdPartyLib\ ??????
为什么我不想这样做?
最佳答案
更新:
是的,您可以将第三方模块复制到您的应用程序文件夹。虽然使用 site-packages 文件夹允许集中每台机器更新,但如果您不经常更改库,您可能更容易按照您的描述将它们包含在您的应用程序文件夹中。
如果可能,将应用程序文件夹放在网络驱动器上将简化网络范围内的更新。
您需要使用 py2exe 或 pyinstaller 。
它将构建一个充满依赖项和 Windows .exe 的文件夹。您也可以包含图标和其他元数据。将其包装在 innoSetup 等免费安装程序中,您将拥有一个专业外观的应用程序。
关于python - 如何在我的 python 脚本中包含 3rd 方模块?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7263696/