1

我有一个在 python 3.6 虚拟环境中运行的烧瓶应用程序,需要从该应用程序运行 qiime2 命令。qiime2 安装在 miniconda 虚拟环境中。我的 ubuntu 在 /usr/bin 中有 python 3.6,但是“which python”返回:/home/****/miniconda3/bin/python 版本为 3.7.1

我使用“subprocess.run”来运行 qiime2 命令。但是有些命令(例如 demux、quality-filter)可以工作,有些命令(例如 deblur)会出现以下错误:

[Errno 2] 没有这样的文件或目录:'deblur'

我的 subprocess.call 如下:

qiime_runner = '/home/***/miniconda3/envs/qiime2-2018.11/bin/qiime'
cmd = qiime_runner + " " + command_with_args
p = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)

我还尝试手动激活 conda 环境,如下所示:

cmd = '/home/****/miniconda3/bin/activate;' + cmd

但它仍然不起作用。如果我在 qiime2 conda 环境中从终端运行命令,它可以工作。

我们必须在 python 环境中运行烧瓶应用程序。

任何人都可以帮我一些想法吗?

问候,

4

0 回答 0