引用和导入第三方python库

时间:2013-04-23 22:10:29

标签: c# python

我是python的新手,来自C#背景。在C#1中,第三方库通常存储在项目文件夹中。

这意味着库完全是项目的内部。然后,项目不依赖于项目文件夹之外的任何内容(当然不是.net框架)。

我非常喜欢这个结构,并尝试通过将库复制到项目根目录中的lib目录,并在启动应用程序时将lib文件夹添加到python路径,成功地在python中镜像它。

我担心这样做可能会让我有所忽视,因为我已经环顾四周,并没有真正看到其他人在这个python社区中这样做。

我的问题很简单 - 这可以吗?通过简单地转储必要的.py库,而不是使用简单的安装,从而将库存储在系统级的站点包中,是否有一些我可能错过的东西?

请随时告诉我您可以看到的任何缺点,无论多么简单。

谢谢!

2 个答案:

答案 0 :(得分:1)

我支持使用virtualenvpip进行开发。这将为您提供您习惯的沙箱。至于分发,请使用 setup.py 并重用 requirements.txt 文件,该文件将与pip install -r一起用于安装依赖项以生成install_requires setuptools.setup的论点。我已经意识到要设置一个显示这一点的示例 - 请查看https://github.com/dave-shawley/setup-example以获得一些带有描述的好例子。我计划在时间允许的情况下再增加一点。

答案 1 :(得分:0)

如果您希望在每个项目的基础上密切管理代码的依赖关系,您可能需要查看virtualenv

Virtualenv将允许您将您的依赖关系保持在您的源附近,但将删除容易出错的手动复制.py文件。

除此之外,有些软件包不是纯python而且它们有时包含编译的C代码 - 如果你使用virtualenv,你不必担心它。