2017-01-20 150 views
7

根据此answer,您可以从Python脚本中导入pip并使用它来安装模块。可以用conda install来做到这一点吗?在Python脚本中使用conda安装

conda文档只显示命令行中的示例,但我正在寻找可以在Python脚本中执行的代码。

是的,我可以从脚本内执行shell命令,但我试图避免这种情况,因为它基本上假定conda无法导入并且它的函数被调用。

+0

你为什么不尝试回报? :) – blacksite

+0

回报什么? – slaw

+0

你总是可以使用子进程 –

回答

6

您可以使用conda.cli.main。例如,该安装numpy

import conda.cli 

conda.cli.main('conda', 'install', '-y', 'numpy') 

使用-y参数,以避免交互式问题:

-y,--yes不要求确认。

+0

谢谢!这做到了,我正在寻找。我曾经在conda脚本中看到过它,但无法解释如何使用它。我是通过一个列表而不是一组命令。 – slaw

-2

试试这个:

!conda install xyzpackage 

请记住这一点,必须对Python脚本不是操作系统提示内完成。

否则,你可以尝试以下方法:

进口SYS 从conda.cli进口主要

sys.exit(main()) 

try: 
    import conda 
    from conda.cli import main 
    sys.argv = ['conda'] + list(args) 
    main() 
+0

这看起来很骇人,因为它正在执行一个shell命令。我想导入conda并调用它的等效安装功能。 – slaw

+0

http://stackoverflow.com/questions/19642326/conda-and-python-modules –

+0

检查上面的链接,它提供了关于conda和python模块的信息。 Conda是一个环境和实用工具,可以在操作系统中使用,而不是在python模块中。你有什么特定的anaconda软件包? –