在Python程序中引入第三方库的最佳实践是什么?

3 投票
1 回答
1014 浏览
提问于 2025-04-16 16:51

下午好。

我正在为我的工作写一个小到中型的Python程序。这个任务需要我使用Excel的库xlwtxlrd,还有一个用来查询Oracle数据库的库,叫做cx_Oracle。我通过一个版本控制系统来开发这个项目,也就是CVS。

我想知道在Python项目中,组织第三方库的标准方式是什么。像xlwt、xlrd和cx_Oracle这些库应该放在像/usr/local/lib/python这样的目录里吗?这个目录应该在PYTHONPATH中吧?还是说这些第三方库应该和项目的源代码放在同一个目录里,这样就可以和项目一起“打包”出去,让Python脚本在不同的平台上都能用。

我只是想了解一些最佳实践,因为我之前是用Java,现在刚开始接触Python。

提前谢谢你,
ktm

1 个回答

6

你基本上有两种选择(就像你在Java中可能会看到的那样)。

第一种是把外部依赖包放到你的应用里,也就是说把所有需要的依赖文件都复制到你的应用目录里。通常不推荐这样做,除非你必须要能打包成一个单独的安装文件或程序。在这种情况下,你还得考虑到所有支持的平台。

处理依赖的更好方法是记录下你的应用需要哪些依赖。一个常见的方法是创建一个叫做requirements.txt的文件,里面列出所有依赖,这样你就可以用 pip install -r requirements.txt 这个命令来安装所有的依赖。Buildout 也是一个可以选择的工具。

撰写回答