how to automatically install dependent modules used in a python app
我刚刚开始学习Python,并对如何分发和安装软件包感到困惑。 我知道帮助脚本easy_install和pip可用于安装依赖模块,但是我不清楚如何以编程方式进行操作,有人可以帮助我吗?
如何在运行python应用程序时自动安装依赖模块? 我依赖subprocess32和其他模块,如果它们不存在我想自动安装它们....
1 2 3
| File"script.py", line 6, in <module>
import subprocess32 as subprocess
ImportError: No module named subprocess32 |
我在下面看了一些在线帖子,但不清楚......真的很感激这里的指导
locallyoptimal.com/blog/2014/03/14/executable-python-scripts-via-entry-points/
Python包安装在Windows中
-
您必须为distutils或setuptools编写自己的配置文件。 在此文件中,您必须指定依赖项。
-
@Bakuriu - 下面的JeffL解决方案是否有效?为什么要为distutils或setuptools编写自己的配置文件,请分享详细信息
-
我误解了你的问题。 无论如何,我相信你的想法是一个非常糟糕的做法。 要么提供独立程序,要么提供安装脚本。 在旅途中安装东西不是一个好主意。 例如,您现在需要管理员权限才能运行您的程序。 在任何情况下,我相信Jeff L.解决方案仍然要求用户确认安装,如果用户不想要你的程序将无论如何都会失败。
-
@Bakuriu - 您是否可以提供有关如何创建可以安装pip的安装脚本以及可以使用pip安装的任何所需依赖模块的更多详细信息
在程序中处理模块安装的最简单方法是使用pip:
1 2
| import pip
pip.main(["install","numpy"]) |
例如,将安装numpy及其依赖项。 您还可以使用numpy=xxx指定版本,或者通过在上述两者之间传递"-upgrade"进行升级。
-
你如何处理ImportError: No module named pip安装错误
-
Pip几乎总是已安装,即使是在下载普通Python时也是如此,所以这很奇怪。但是如果你错过它,这里是安装Pip的说明链接:pip.pypa.io/en/stable/installing
-
有没有办法检查机器上是否已经存在所需的设置工具,如pip,easy_install
-
当然,您可以尝试从命令行或bash运行它们,例如easy_install numpy。您也可以尝试导入像我上面显示的那样。如果这两个都失败了那么你要么没有安装东西(并且应该看看像Anaconda或Canopy这样的免费发行版),或者你的系统和python路径有问题。
-
我理解。我的意思是有一种方法以编程方式安装pip如果pip不存在,这是您展示的脚本的扩展名。
-
啊,我明白了。并不是我所知道的,但是Pip是从2.7.9版本开始的所有Python版本的标准版本,因此它应该始终存在,除非由于某种原因你需要一个直接从Python.org构建的早期版本的Python。
-
是的,我正在使用python 2.7.3,是否可以预先安装pip然后将python应用程序和pip打包为安装程序......还有哪些其他选项?