如何使用单个脚本自动安装python模块

时间:2015-09-03 10:31:28

标签: python shell

我已经构建了一个用于机器学习和预测的Python模块,建议它包含大约9种不同的脚本,这些脚本现在需要各种依赖,如scikit-learn,pandas,PyDpi等。

由于这个程序是专门为生物学家开发的,我希望这个软件的最终用户不会完全了解Linux系统和安装过程。我希望在此包中包含一个脚本,该脚本在使用之前会自动安装所有依赖项。 这有什么办法吗?请建议。

提前谢谢。

3 个答案:

答案 0 :(得分:3)

你可以用pip

来做
import pip

def install(package):
    pip.main(['install', package])

例如

if __name__ == '__main__':
    install('pandas')

答案 1 :(得分:2)

你可以使用pip冻结并在txt文件中写下所有要求,如:

reportlab==3.0
djang0==1.8.4
...

将其保存在文件名requirements.txt

然后运行

pip install -r requirements.txt 

答案 2 :(得分:1)

您可以使用Distutils创建安装设置脚本,该脚本会自动加载所需的依赖项。以下是如何执行此操作的指南https://docs.python.org/2/distutils/setupscript.html

示例setup.py文件:

try:
  from setuptools import setup, find_packages
except ImportError:
  from distutils.core import setup


setup(name='myLib',
  version='1.0',
  description='my great lib',
  author='Author name',
  author_email='author@mail.com',
  packages = find_packages(),       
  install_requires = ['docutils>=0.3'],
  )

安装软件包时,用户只需输入

即可
python setup.py install

自动安装所需的依赖项。

相关问题