Subprocess.Popen:如何传递没有空格的参数

时间:2013-04-20 19:47:14

标签: python subprocess

Stackoverflow的强大人物,

我想执行

./namecoind name_new d/<name>

在带有subprocess.popen的Python脚本中,其中'name'是脚本中的变量。 'd /'和变量之间不允许有空格。我试过这个:

p = subprocess.Popen(["./namecoind", "name_new", "d/", domainname])

但这不起作用,因为这会在d /和'domainname'之间添加一个ws。

那么,该怎么办?

提前致谢!

斯特芬

1 个答案:

答案 0 :(得分:3)

空白没有进入图片;如果您传递一个列表(而不是字符串),subprocess.Popen不会通过shell,因此它不会在空格上拆分命令行。该参数只需要作为单个列表项发送:

p = subprocess.Popen(["./namecoind", "name_new", "d/" + domainname])