我有一个在python 3.6虚拟环境中运行的flask应用程序,需要从该应用程序运行qiime2命令。 qiime2安装在miniconda虚拟环境中。我的ubuntu在/ usr / bin中有python 3.6,但是“哪个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环境中运行flask应用程序。
有人可以帮我一些想法吗?
此致