所以标题几乎解释了我的问题。 stdout = subprocess.PIPE和stdout = PIPE有什么区别?两者都来自子进程模块,但为什么要使用另一个?你如何使用stdout = PIPE?即捕获输出?或者将其打印到屏幕上?我只知道如何使用subprocess.PIPE重定向它。
e.g。
import subprocess
from subprocess import PIPE
p = subprocess.Popen(['samtools', 'view', 'bamfile.bam'], stdout=PIPE)
答案 0 :(得分:4)
from subprocess import PIPE
以替代名称subprocess.PIPE
提供PIPE
;它相当于:
PIPE = subprocess.PIPE
因此,选择哪个版本无关紧要。 subprocess.PIPE
清楚地说明变量的来源,但稍长一些。