使用 Popen() 函数从外部软件调用命令
Calling a command from external software using Popen() function
我正在编写 Python 脚本,我必须从外部软件调用命令。我目前正在使用 Popen() 函数来调用这样的命令。该命令也有一些选项。我想知道如何将这些选项合并到 Popen() 函数中。我现在使用的代码是:
from subprocess import Popen, PIPE
proc = Popen(["halSummarizeMutations", hal_output], stdout=PIPE)
summary_mutation = proc.communicate()[0]
在 Popen() 函数中,我应该为命令的选项输入一个变量。修改后的代码应如下所示:
proc = Popen(["halSummarizeMutations", --option optioninput, hal_output], stdout=PIPE)
代码是否正确或是否有不同的编码方法?提前致谢。
如果你想给外部软件添加一些参数,只需将变量作为字符串添加,这里是"ls -la"的例子,你可以在列表中添加“-la”,你可以添加任何
其他参数给list.Remember参数都是string.
from subprocess import Popen, PIPE
proc = Popen(["ls", '-la'], stdout=PIPE) # if you want more, add after "-la"
print proc.stdout.readlines()
将每个参数作为单独的列表项提供:
from subprocess import check_output
cmd = ["halSummarizeMutations", "--option", "optioninput", hal_output]
summary_mutation = check_output(cmd)
其中 hal_output
是之前定义的字符串变量。
我正在编写 Python 脚本,我必须从外部软件调用命令。我目前正在使用 Popen() 函数来调用这样的命令。该命令也有一些选项。我想知道如何将这些选项合并到 Popen() 函数中。我现在使用的代码是:
from subprocess import Popen, PIPE
proc = Popen(["halSummarizeMutations", hal_output], stdout=PIPE)
summary_mutation = proc.communicate()[0]
在 Popen() 函数中,我应该为命令的选项输入一个变量。修改后的代码应如下所示:
proc = Popen(["halSummarizeMutations", --option optioninput, hal_output], stdout=PIPE)
代码是否正确或是否有不同的编码方法?提前致谢。
如果你想给外部软件添加一些参数,只需将变量作为字符串添加,这里是"ls -la"的例子,你可以在列表中添加“-la”,你可以添加任何 其他参数给list.Remember参数都是string.
from subprocess import Popen, PIPE
proc = Popen(["ls", '-la'], stdout=PIPE) # if you want more, add after "-la"
print proc.stdout.readlines()
将每个参数作为单独的列表项提供:
from subprocess import check_output
cmd = ["halSummarizeMutations", "--option", "optioninput", hal_output]
summary_mutation = check_output(cmd)
其中 hal_output
是之前定义的字符串变量。