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

如何使用单个脚本自动安装python模块,python,shell,Python,Shell,我已经为机器学习和预测构建了一个Python模块,它包括大约9个不同的脚本,现在需要各种依赖项,如scikit learn、pandas、PyDpi等 由于此程序是专门为生物学家开发的,我希望此软件的最终用户不会完全了解Linux系统和安装过程。我希望在这个包中包含一个脚本,在使用之前自动安装所有依赖项。 有什么办法吗?请建议 提前谢谢 您可以使用pip来完成 import pip def install(package): pip.main(['install', package])

我已经为机器学习和预测构建了一个Python模块,它包括大约9个不同的脚本,现在需要各种依赖项,如scikit learn、pandas、PyDpi等

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


提前谢谢

您可以使用pip来完成

import pip

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

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

您可以使用pip来完成它

import pip

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

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

您可以使用Distutils生成安装脚本,它会自动加载所需的依赖项。下面是如何做到这一点的指南

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

它会自动安装所需的依赖项。

您可以使用Distutils创建安装脚本,它会自动加载所需的依赖项。下面是如何做到这一点的指南

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

它会自动安装所需的依赖项。

您可以使用pip冻结并将所有需求写入txt文件,如:

reportlab==3.0
djang0==1.8.4
...
将其保存在文件名requirements.txt中

然后跑

pip install -r requirements.txt 

您可以使用pip冻结并将所有需求写入txt文件,如:

reportlab==3.0
djang0==1.8.4
...
将其保存在文件名requirements.txt中

然后跑

pip install -r requirements.txt 

谷歌搜索
python distutils
,我还建议大家看看
virtualenv
()。它基本上支持创建隔离的Python环境,您可以在其中安装任何软件包,而无需接触系统文件。最终用户甚至可能不被允许安装任何软件(或拥有
sudo
的权限),因此您可以为他们提供一个脚本,创建一个virtualenv来运行您的脚本。它的使用相当简单,例如
virtualenv py
创建,然后
py/bin/python
运行,或者
py/bin/pip安装包
安装到virtualenv.Google for
python distutils
我还建议看一下
virtualenv
()。它基本上支持创建隔离的Python环境,您可以在其中安装任何软件包,而无需接触系统文件。最终用户甚至可能不被允许安装任何软件(或拥有
sudo
的权限),因此您可以为他们提供一个脚本,创建一个virtualenv来运行您的脚本。它的使用相当简单,例如
virtualenv py
创建,然后
py/bin/python
运行,或者
py/bin/pip安装包安装到virtualenv。