我已经构建了一个用于机器学习和预测的Python模块,建议它包含大约9种不同的脚本,这些脚本现在需要各种依赖,如scikit-learn,pandas,PyDpi等。
由于这个程序是专门为生物学家开发的,我希望这个软件的最终用户不会完全了解Linux系统和安装过程。我希望在此包中包含一个脚本,该脚本在使用之前会自动安装所有依赖项。 这有什么办法吗?请建议。
提前谢谢。答案 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
自动安装所需的依赖项。